diff --git a/fluxer_admin/openapi-admin.json b/fluxer_admin/openapi-admin.json index a4312b6a4..cd2a92ff3 100644 --- a/fluxer_admin/openapi-admin.json +++ b/fluxer_admin/openapi-admin.json @@ -15711,9 +15711,10 @@ "id": {"type": "string", "description": "The credential ID"}, "name": {"type": "string", "description": "User-assigned name for the credential"}, "created_at": {"type": "string", "description": "When the credential was registered"}, - "last_used_at": {"nullable": true, "description": "When the credential was last used", "type": "string"} + "last_used_at": {"nullable": true, "description": "When the credential was last used", "type": "string"}, + "rp_id": {"type": "string", "description": "Relying party ID the passkey belongs to"} }, - "required": ["id", "name", "created_at", "last_used_at"], + "required": ["id", "name", "created_at", "last_used_at", "rp_id"], "additionalProperties": false }, "VoiceServerAdminResponse": { diff --git a/fluxer_admin/tests/api_deserialization.rs b/fluxer_admin/tests/api_deserialization.rs index ed90b36da..7454f83dc 100644 --- a/fluxer_admin/tests/api_deserialization.rs +++ b/fluxer_admin/tests/api_deserialization.rs @@ -870,7 +870,8 @@ fn deserialize_webauthn_credentials_response() { "id": "credential-a", "name": "YubiKey", "created_at": "2026-05-26T12:00:00.000Z", - "last_used_at": null + "last_used_at": null, + "rp_id": "fluxer.com" }, { "id": "credential-b", diff --git a/fluxer_api/src/api/admin/services/AdminUserSecurityService.ts b/fluxer_api/src/api/admin/services/AdminUserSecurityService.ts index 96aa0200c..63851b518 100644 --- a/fluxer_api/src/api/admin/services/AdminUserSecurityService.ts +++ b/fluxer_api/src/api/admin/services/AdminUserSecurityService.ts @@ -8,12 +8,14 @@ import * as AuthEmail from '@app/api/auth/AuthEmail'; import * as AuthMfa from '@app/api/auth/AuthMfa'; import * as AuthSession from '@app/api/auth/AuthSession'; import * as AuthUtility from '@app/api/auth/AuthUtility'; +import {visibleWebAuthnCredentials} from '@app/api/auth/services/PasskeyRelyingParty'; import {createPasswordResetToken, createUserID, type UserID} from '@app/api/BrandedTypes'; import type {UserRow} from '@app/api/database/types/UserTypes'; import {Logger} from '@app/api/Logger'; import {getInstanceConfigRepository} from '@app/api/middleware/ServiceSingletons'; import type {IRiskHistoryRepository} from '@app/api/risk/HistoricalOutcomeRepository'; import type {HistoricalOutcomeCode} from '@app/api/risk/RiskHistoryTypes'; +import {mapWebAuthnCredentialToResponse} from '@app/api/user/UserMappers'; import {resolveAssignedTraits} from '@app/api/user/UserTraits'; import {getIpAddressReverse, getLocationLabelFromIp} from '@app/api/utils/IpUtils'; import {resolveSessionClientInfo} from '@app/api/utils/SessionClientIdentity'; @@ -545,7 +547,7 @@ export class AdminUserSecurityService { if (!user) { throw new UnknownUserError(); } - const credentials = await userRepository.listWebAuthnCredentials(userId); + const credentials = visibleWebAuthnCredentials(await userRepository.listWebAuthnCredentials(userId)); await auditService.createAuditLog({ adminUserId, targetType: 'user', @@ -554,12 +556,9 @@ export class AdminUserSecurityService { auditLogReason, metadata: new Map([['credential_count', credentials.length.toString()]]), }); - return credentials.map((cred) => ({ - id: cred.credentialId, - name: cred.name, - created_at: cred.createdAt.toISOString(), - last_used_at: cred.lastUsedAt?.toISOString() ?? null, - })); + return credentials.map((cred) => + mapWebAuthnCredentialToResponse(cred, this.deps.apiContext.services.config.auth.passkeys.rpId), + ); } async deleteWebAuthnCredential( diff --git a/fluxer_api/src/api/app/ControllerRegistry.ts b/fluxer_api/src/api/app/ControllerRegistry.ts index 60c001a9e..6057751aa 100644 --- a/fluxer_api/src/api/app/ControllerRegistry.ts +++ b/fluxer_api/src/api/app/ControllerRegistry.ts @@ -4,6 +4,7 @@ import {registerAdminControllers} from '@app/api/admin/controllers/index'; import {AttachmentController} from '@app/api/attachment/AttachmentController'; import {AuthController} from '@app/api/auth/AuthController'; import {OriginHandoffController} from '@app/api/auth/OriginHandoffController'; +import {PasskeyBridgeController} from '@app/api/auth/PasskeyBridgeController'; import {BlueskyOAuthController} from '@app/api/bluesky/BlueskyOAuthController'; import {Config} from '@app/api/Config'; import {ChannelController} from '@app/api/channel/ChannelController'; @@ -48,6 +49,7 @@ export function registerControllers(routes: HonoApp, config: APIConfig): void { registerAdminControllers(routes); AuthController(routes); OriginHandoffController(routes); + PasskeyBridgeController(routes); AttachmentController(routes); ChannelController(routes); ConnectionController(routes); diff --git a/fluxer_api/src/api/auth/AuthController.ts b/fluxer_api/src/api/auth/AuthController.ts index 23d25558c..9b64e1a0c 100644 --- a/fluxer_api/src/api/auth/AuthController.ts +++ b/fluxer_api/src/api/auth/AuthController.ts @@ -447,7 +447,7 @@ export function AuthController(app: HonoApp) { 'Retrieve WebAuthn authentication challenge and options for passwordless login with biometrics or security keys.', }), async (ctx) => { - return ctx.json(await ctx.get('authRequestService').getWebAuthnAuthenticationOptions()); + return ctx.json(await ctx.get('authRequestService').getWebAuthnAuthenticationOptions(ctx.req.header('origin'))); }, ); app.post( @@ -490,7 +490,9 @@ export function AuthController(app: HonoApp) { 'Retrieve WebAuthn challenge and options for multi-factor authentication. Requires the MFA ticket from initial login.', }), async (ctx) => { - return ctx.json(await ctx.get('authRequestService').getWebAuthnMfaOptions(ctx.req.valid('json'))); + return ctx.json( + await ctx.get('authRequestService').getWebAuthnMfaOptions(ctx.req.valid('json'), ctx.req.header('origin')), + ); }, ); app.post( diff --git a/fluxer_api/src/api/auth/AuthLogin.ts b/fluxer_api/src/api/auth/AuthLogin.ts index 3697d5060..c0c3664d9 100644 --- a/fluxer_api/src/api/auth/AuthLogin.ts +++ b/fluxer_api/src/api/auth/AuthLogin.ts @@ -23,6 +23,7 @@ import type {InviteService} from '@app/api/invite/InviteService'; import {Logger} from '@app/api/Logger'; import {createRequestCache} from '@app/api/middleware/RequestCacheMiddleware'; import {getInstanceConfigRepository} from '@app/api/middleware/ServiceSingletons'; +import type {AuthSession as AuthSessionModel} from '@app/api/models/AuthSession'; import type {User} from '@app/api/models/User'; import {lookupGeoip} from '@app/api/utils/IpUtils'; import {createRateLimitError} from '@app/api/utils/RateLimitUtils'; @@ -353,7 +354,7 @@ export async function login( const MFA_TICKET_MAX_ATTEMPTS = 5; const MFA_USER_MAX_ATTEMPTS = 10; -async function consumeMfaAttempt( +export async function consumeMfaAttempt( ctx: ApiContext, {userId, ticket, field}: {userId: string; ticket: string; field: string}, ): Promise { @@ -381,7 +382,7 @@ export async function loginMfaTotp( ctx: ApiContext, {code, ticket, request}: LoginMfaTotpParams, ): Promise { - const {users, cache, rateLimit} = ctx.services; + const {users, cache} = ctx.services; const userId = await cache.get(`mfa-ticket:${ticket}`); if (!userId) { throw InputValidationError.fromCode('ticket', ValidationErrorCodes.SESSION_TIMEOUT); @@ -405,21 +406,36 @@ export async function loginMfaTotp( if (!isValid) { throw InputValidationError.fromCode('code', ValidationErrorCodes.INVALID_CODE); } + const [token] = await completeMfaLogin(ctx, user, ticket, request); + return {user_id: user.id.toString(), token}; +} + +export async function createLoginSession( + ctx: ApiContext, + user: User, + request: Request, +): Promise<[token: string, AuthSessionModel]> { + return AuthSession.createAuthSession(ctx, {user, origin: AuthSession.resolveSessionOrigin(ctx, request)}); +} + +export async function completeMfaLogin( + ctx: ApiContext, + user: User, + ticket: string, + request: Request, +): Promise<[token: string, AuthSessionModel]> { + const {cache, rateLimit} = ctx.services; await cache.delete(`mfa-ticket:${ticket}`); await rateLimit.resetLimit(`mfa:ticket:${ticket}`); await rateLimit.resetLimit(`mfa:user:${user.id}`); - const [token] = await AuthSession.createAuthSession(ctx, { - user, - origin: AuthSession.resolveSessionOrigin(ctx, request), - }); - return {user_id: user.id.toString(), token}; + return createLoginSession(ctx, user, request); } export async function loginMfaWebAuthn( ctx: ApiContext, {response, challenge, ticket, request}: LoginMfaWebAuthnParams, ): Promise { - const {users, cache, rateLimit} = ctx.services; + const {users, cache} = ctx.services; const userId = await cache.get(`mfa-ticket:${ticket}`); if (!userId) { throw InputValidationError.fromCode('ticket', ValidationErrorCodes.SESSION_TIMEOUT); @@ -434,13 +450,7 @@ export async function loginMfaWebAuthn( } await consumeMfaAttempt(ctx, {userId: user.id.toString(), ticket, field: 'ticket'}); await AuthMfa.verifyWebAuthnAuthentication(ctx, user.id, response, challenge, 'mfa', ticket); - await cache.delete(`mfa-ticket:${ticket}`); - await rateLimit.resetLimit(`mfa:ticket:${ticket}`); - await rateLimit.resetLimit(`mfa:user:${user.id}`); - const [token] = await AuthSession.createAuthSession(ctx, { - user, - origin: AuthSession.resolveSessionOrigin(ctx, request), - }); + const [token] = await completeMfaLogin(ctx, user, ticket, request); return {user_id: user.id.toString(), token}; } diff --git a/fluxer_api/src/api/auth/AuthMfa.ts b/fluxer_api/src/api/auth/AuthMfa.ts index 1278e8547..ab8b7aec5 100644 --- a/fluxer_api/src/api/auth/AuthMfa.ts +++ b/fluxer_api/src/api/auth/AuthMfa.ts @@ -3,13 +3,20 @@ import {timingSafeEqual} from 'node:crypto'; import type {ApiContext} from '@app/api/ApiContext'; import * as AuthUtility from '@app/api/auth/AuthUtility'; +import { + type CredentialRpSelection, + effectiveRpId, + originRpId, + selectCredentialRp, + visibleWebAuthnCredentials, +} from '@app/api/auth/services/PasskeyRelyingParty'; import {deriveSudoMethods, userHasMfa, userHasSudoCapability} from '@app/api/auth/services/SudoMethods'; import {createUserID, type UserID} from '@app/api/BrandedTypes'; import {Logger} from '@app/api/Logger'; import type {MfaBackupCode} from '@app/api/models/MfaBackupCode'; import type {User} from '@app/api/models/User'; import type {WebAuthnCredential} from '@app/api/models/WebAuthnCredential'; -import {mapUserToPrivateResponse} from '@app/api/user/UserMappers'; +import {mapUserToPrivateResponse, mapWebAuthnCredentialToResponse} from '@app/api/user/UserMappers'; import {TotpGenerator} from '@app/api/utils/TotpGenerator'; import {UserAuthenticatorTypes} from '@fluxer/constants/src/UserConstants'; import {ValidationErrorCodes} from '@fluxer/constants/src/ValidationErrorCodes'; @@ -22,7 +29,12 @@ import {PasskeyAuthenticationFailedError} from '@fluxer/errors/src/domains/auth/ import {UnknownWebAuthnCredentialError} from '@fluxer/errors/src/domains/auth/UnknownWebAuthnCredentialError'; import {WebAuthnCredentialLimitReachedError} from '@fluxer/errors/src/domains/auth/WebAuthnCredentialLimitReachedError'; import {InputValidationError} from '@fluxer/errors/src/domains/core/InputValidationError'; -import type {AuthenticationResponseJSON, RegistrationResponseJSON} from '@simplewebauthn/server'; +import type { + AuthenticationResponseJSON, + PublicKeyCredentialCreationOptionsJSON, + PublicKeyCredentialRequestOptionsJSON, + RegistrationResponseJSON, +} from '@simplewebauthn/server'; import { generateAuthenticationOptions, generateRegistrationOptions, @@ -33,7 +45,41 @@ import { } from '@simplewebauthn/server'; import {ms, seconds} from 'itty-time'; -type WebAuthnChallengeContext = 'registration' | 'discoverable' | 'mfa' | 'sudo'; +type WebAuthnChallengeContext = 'registration' | 'discoverable' | 'mfa' | 'sudo' | 'bridge' | 'migration_registration'; + +interface WebAuthnChallengeEntry { + context: WebAuthnChallengeContext; + userId?: string; + ticket?: string; + rpId?: string; + credentialIds?: Array | null; +} + +interface WebAuthnChallengeScope { + rpId: string; + credentialIds: Array | null; +} + +interface WebAuthnAuthenticationOptionsParams { + selection: CredentialRpSelection | {rpId: string; credentials: null}; + context: WebAuthnChallengeContext; + userId?: UserID; + ticket?: string; +} + +interface WebAuthnRegistrationOptionsParams { + rpId: string; + context: WebAuthnChallengeContext; + excludeCredentials: Array; +} + +interface VerifiedWebAuthnRegistration { + credentialId: string; + publicKey: Buffer; + counter: bigint; + transports: Set | null; + rpId: string; +} interface SudoMfaVerificationParams { userId: UserID; @@ -122,37 +168,117 @@ export async function verifyMfaCode(ctx: ApiContext, params: VerifyMfaCodeParams return false; } -export async function generateWebAuthnRegistrationOptions(ctx: ApiContext, userId: UserID) { +function toCredentialDescriptor(credential: WebAuthnCredential) { + return { + id: credential.credentialId, + transports: credential.transports + ? (Array.from(credential.transports) as Array<'usb' | 'nfc' | 'ble' | 'internal' | 'cable' | 'hybrid'>) + : undefined, + }; +} + +export function storedRpId(ctx: ApiContext, rpId: string): string | null { + return rpId === ctx.services.config.auth.passkeys.rpId ? null : rpId; +} + +export async function createWebAuthnRegistrationOptions( + ctx: ApiContext, + userId: UserID, + {rpId, context, excludeCredentials}: WebAuthnRegistrationOptionsParams, +): Promise { const {users, config} = ctx.services; const user = await users.findUniqueAssert(userId); - const existingCredentials = await users.listWebAuthnCredentials(userId); - if (existingCredentials.length >= 10) { - throw new WebAuthnCredentialLimitReachedError(); - } const options = await generateRegistrationOptions({ rpName: config.auth.passkeys.rpName, - rpID: config.auth.passkeys.rpId, + rpID: rpId, userID: new TextEncoder().encode(user.id.toString()), userName: user.username!, userDisplayName: user.username!, attestationType: 'none', supportedAlgorithmIDs: [-8, -7, -257], - excludeCredentials: existingCredentials.map((cred) => ({ - id: cred.credentialId, - transports: cred.transports - ? (Array.from(cred.transports) as Array<'usb' | 'nfc' | 'ble' | 'internal' | 'cable' | 'hybrid'>) - : undefined, - })), + excludeCredentials: excludeCredentials.map(toCredentialDescriptor), authenticatorSelection: { residentKey: 'preferred', requireResidentKey: false, userVerification: 'preferred', }, }); - await saveWebAuthnChallenge(ctx, options.challenge, {context: 'registration', userId}); + await saveWebAuthnChallenge(ctx, options.challenge, {context, userId, rpId, credentialIds: null}); return options; } +export async function generateWebAuthnRegistrationOptions( + ctx: ApiContext, + userId: UserID, + origin: string | null | undefined, +): Promise { + const existingCredentials = await ctx.services.users.listWebAuthnCredentials(userId); + if (visibleWebAuthnCredentials(existingCredentials).length >= 10) { + throw new WebAuthnCredentialLimitReachedError(); + } + return createWebAuthnRegistrationOptions(ctx, userId, { + rpId: originRpId(ctx, origin), + context: 'registration', + excludeCredentials: existingCredentials, + }); +} + +export async function verifyWebAuthnRegistrationResponse( + ctx: ApiContext, + userId: UserID, + response: RegistrationResponseJSON, + expectedChallenge: string, + context: WebAuthnChallengeContext, + expectedOrigin: Array = ctx.services.config.auth.passkeys.allowedOrigins, +): Promise { + const {config} = ctx.services; + const {rpId} = await consumeWebAuthnChallenge(ctx, expectedChallenge, context, {userId}); + const responseObj = response as {id?: string; response?: {transports?: Array}}; + const transports = responseObj.response?.transports ? new Set(responseObj.response.transports) : null; + if (config.dev.testModeEnabled) { + const credentialId = responseObj.id ?? `test-credential:${userId.toString()}:${Date.now()}`; + return {credentialId, publicKey: Buffer.from(`test-public-key:${credentialId}`), counter: 0n, transports, rpId}; + } + let verification: VerifiedRegistrationResponse; + try { + verification = await verifyRegistrationResponse({ + response, + expectedChallenge, + expectedOrigin, + expectedRPID: rpId, + requireUserVerification: false, + supportedAlgorithmIDs: [-8, -7, -257], + }); + } catch (error) { + Logger.error({error, userId, expectedChallenge, rpId, expectedOrigin}, 'WebAuthn verification failed'); + throw new InvalidWebAuthnCredentialError(); + } + if (!verification.verified || !verification.registrationInfo) { + Logger.error( + {userId, verified: verification.verified, hasRegistrationInfo: !!verification.registrationInfo}, + 'WebAuthn verification result invalid', + ); + throw new InvalidWebAuthnCredentialError(); + } + const {credential} = verification.registrationInfo; + let publicKeyBuffer: Buffer; + let counterBigInt: bigint; + try { + publicKeyBuffer = Buffer.from(credential.publicKey); + } catch (_error) { + throw new InvalidWebAuthnPublicKeyFormatError(); + } + try { + if (credential.counter === undefined || credential.counter === null) { + throw new Error('Counter value is undefined or null'); + } + counterBigInt = BigInt(credential.counter); + } catch (_error) { + throw new InvalidWebAuthnCredentialCounterError(); + } + return {credentialId: credential.id, publicKey: publicKeyBuffer, counter: counterBigInt, transports, rpId}; +} + export async function verifyWebAuthnRegistration( ctx: ApiContext, userId: UserID, @@ -160,85 +286,39 @@ export async function verifyWebAuthnRegistration( expectedChallenge: string, name: string, ): Promise { - const {users, config} = ctx.services; + const {users} = ctx.services; const existingCredentials = await users.listWebAuthnCredentials(userId); - await consumeWebAuthnChallenge(ctx, expectedChallenge, 'registration', {userId}); - if (existingCredentials.length >= 10) { + if (visibleWebAuthnCredentials(existingCredentials).length >= 10) { throw new WebAuthnCredentialLimitReachedError(); } - if (config.dev.testModeEnabled) { - const responseObj = response as {id?: string; response?: {transports?: Array}}; - const credentialId = responseObj.id ?? `test-credential:${userId.toString()}:${Date.now()}`; - const publicKeyBuffer = Buffer.from(`test-public-key:${credentialId}`); - await users.createWebAuthnCredential( - userId, - credentialId, - publicKeyBuffer, - 0n, - responseObj.response?.transports ? new Set(responseObj.response.transports) : null, - name, - ); - } else { - const expectedOrigin = config.auth.passkeys.allowedOrigins; - const rpID = config.auth.passkeys.rpId; - let verification: VerifiedRegistrationResponse; - try { - verification = await verifyRegistrationResponse({ - response, - expectedChallenge, - expectedOrigin, - expectedRPID: rpID, - requireUserVerification: false, - supportedAlgorithmIDs: [-8, -7, -257], - }); - } catch (error) { - Logger.error({error, userId, expectedChallenge, rpID, expectedOrigin}, 'WebAuthn verification failed'); - throw new InvalidWebAuthnCredentialError(); - } - if (!verification.verified || !verification.registrationInfo) { - Logger.error( - {userId, verified: verification.verified, hasRegistrationInfo: !!verification.registrationInfo}, - 'WebAuthn verification result invalid', - ); - throw new InvalidWebAuthnCredentialError(); - } - const {credential} = verification.registrationInfo; - let publicKeyBuffer: Buffer; - let counterBigInt: bigint; - try { - publicKeyBuffer = Buffer.from(credential.publicKey); - } catch (_error) { - throw new InvalidWebAuthnPublicKeyFormatError(); - } - try { - if (credential.counter === undefined || credential.counter === null) { - throw new Error('Counter value is undefined or null'); - } - counterBigInt = BigInt(credential.counter); - } catch (_error) { - throw new InvalidWebAuthnCredentialCounterError(); - } - const responseObj = response as {response?: {transports?: Array}}; - await users.createWebAuthnCredential( - userId, - credential.id, - publicKeyBuffer, - counterBigInt, - responseObj.response?.transports ? new Set(responseObj.response.transports) : null, - name, - ); - } + const verified = await verifyWebAuthnRegistrationResponse(ctx, userId, response, expectedChallenge, 'registration'); + await users.createWebAuthnCredential( + userId, + verified.credentialId, + verified.publicKey, + verified.counter, + verified.transports, + name, + storedRpId(ctx, verified.rpId), + ); await dispatchWebAuthnCredentialsUpdate(ctx, userId); } export async function deleteWebAuthnCredential(ctx: ApiContext, userId: UserID, credentialId: string): Promise { const {users, gateway, botMfaMirror} = ctx.services; const credential = await users.getWebAuthnCredential(userId, credentialId); - if (!credential) { + if (!credential || credential.supersededBy !== null) { throw new UnknownWebAuthnCredentialError(); } await users.deleteWebAuthnCredential(userId, credentialId); - const remainingCredentials = await users.listWebAuthnCredentials(userId); + const remaining = await users.listWebAuthnCredentials(userId); + const remainingCredentials = visibleWebAuthnCredentials(remaining); + const orphanedTwins = remaining.filter( + (cred) => cred.supersededBy === credentialId || (cred.supersededBy !== null && remainingCredentials.length === 0), + ); + for (const twin of orphanedTwins) { + await users.deleteWebAuthnCredential(userId, twin.credentialId); + } if (remainingCredentials.length === 0) { const user = await users.findUniqueAssert(userId); if (user.authenticatorTypes.has(UserAuthenticatorTypes.WEBAUTHN)) { @@ -298,37 +378,66 @@ export async function renameWebAuthnCredential( ): Promise { const {users} = ctx.services; const credential = await users.getWebAuthnCredential(userId, credentialId); - if (!credential) { + if (!credential || credential.supersededBy !== null) { throw new UnknownWebAuthnCredentialError(); } await users.updateWebAuthnCredentialName(userId, credentialId, name); await dispatchWebAuthnCredentialsUpdate(ctx, userId); } -async function dispatchWebAuthnCredentialsUpdate(ctx: ApiContext, userId: UserID): Promise { - const {users, gateway} = ctx.services; +export async function dispatchWebAuthnCredentialsUpdate(ctx: ApiContext, userId: UserID): Promise { + const {users, gateway, config} = ctx.services; const credentials = await users.listWebAuthnCredentials(userId); await gateway.dispatchPresence({ userId, event: 'WEBAUTHN_CREDENTIALS_UPDATE', - data: credentials.map((cred: WebAuthnCredential) => ({ - id: cred.credentialId, - name: cred.name, - created_at: cred.createdAt.toISOString(), - last_used_at: cred.lastUsedAt?.toISOString() ?? null, - })), + data: visibleWebAuthnCredentials(credentials).map((cred) => + mapWebAuthnCredentialToResponse(cred, config.auth.passkeys.rpId), + ), }); } -export async function generateWebAuthnAuthenticationOptionsDiscoverable(ctx: ApiContext) { +export async function generateWebAuthnAuthenticationOptions( + ctx: ApiContext, + {selection, context, userId, ticket}: WebAuthnAuthenticationOptionsParams, +): Promise { const options = await generateAuthenticationOptions({ - rpID: ctx.services.config.auth.passkeys.rpId, - userVerification: 'required', + rpID: selection.rpId, + allowCredentials: selection.credentials?.map(toCredentialDescriptor), + userVerification: selection.credentials === null ? 'required' : 'discouraged', + }); + await saveWebAuthnChallenge(ctx, options.challenge, { + context, + userId, + ticket, + rpId: selection.rpId, + credentialIds: selection.credentials?.map((cred) => cred.credentialId) ?? null, }); - await saveWebAuthnChallenge(ctx, options.challenge, {context: 'discoverable'}); return options; } +function selectCredentialRpOrThrow( + ctx: ApiContext, + origin: string | null | undefined, + credentials: Array, +): CredentialRpSelection { + const selection = selectCredentialRp(ctx, origin, credentials); + if (selection.credentials.length === 0) { + throw new NoPasskeysRegisteredError(); + } + return selection; +} + +export async function generateWebAuthnAuthenticationOptionsDiscoverable( + ctx: ApiContext, + origin: string | null | undefined, +): Promise { + return generateWebAuthnAuthenticationOptions(ctx, { + selection: {rpId: originRpId(ctx, origin), credentials: null}, + context: 'discoverable', + }); +} + export async function verifyWebAuthnAuthenticationDiscoverable( ctx: ApiContext, response: AuthenticationResponseJSON, @@ -344,29 +453,24 @@ export async function verifyWebAuthnAuthenticationDiscoverable( return users.findUniqueAssert(userId); } -export async function generateWebAuthnAuthenticationOptionsForMfa(ctx: ApiContext, ticket: string) { - const {users, cache, config} = ctx.services; +export async function generateWebAuthnAuthenticationOptionsForMfa( + ctx: ApiContext, + ticket: string, + origin: string | null | undefined, +): Promise { + const {users, cache} = ctx.services; const userIdStr = await cache.get(`mfa-ticket:${ticket}`); if (!userIdStr) { throw InputValidationError.fromCode('ticket', ValidationErrorCodes.SESSION_TIMEOUT); } const userId = createUserID(BigInt(userIdStr)); const credentials = await users.listWebAuthnCredentials(userId); - if (credentials.length === 0) { - throw new NoPasskeysRegisteredError(); - } - const options = await generateAuthenticationOptions({ - rpID: config.auth.passkeys.rpId, - allowCredentials: credentials.map((cred) => ({ - id: cred.credentialId, - transports: cred.transports - ? (Array.from(cred.transports) as Array<'usb' | 'nfc' | 'ble' | 'internal' | 'cable' | 'hybrid'>) - : undefined, - })), - userVerification: 'discouraged', + return generateWebAuthnAuthenticationOptions(ctx, { + selection: selectCredentialRpOrThrow(ctx, origin, credentials), + context: 'mfa', + userId, + ticket, }); - await saveWebAuthnChallenge(ctx, options.challenge, {context: 'mfa', userId, ticket}); - return options; } export async function verifyWebAuthnAuthentication( @@ -376,21 +480,26 @@ export async function verifyWebAuthnAuthentication( expectedChallenge: string, context: WebAuthnChallengeContext = 'mfa', ticket?: string, -): Promise { + expectedOrigin: Array = ctx.services.config.auth.passkeys.allowedOrigins, +): Promise { const {users, config} = ctx.services; - await consumeWebAuthnChallenge(ctx, expectedChallenge, context, {userId, ticket}); + const scope = await consumeWebAuthnChallenge(ctx, expectedChallenge, context, {userId, ticket}); const credentialId = (response as {id: string}).id; const credential = await users.getWebAuthnCredential(userId, credentialId); if (!credential) { throw new PasskeyAuthenticationFailedError(); } + if ( + effectiveRpId(ctx, credential) !== scope.rpId || + (scope.credentialIds !== null && !scope.credentialIds.includes(credentialId)) + ) { + throw new PasskeyAuthenticationFailedError(); + } if (config.dev.testModeEnabled) { await users.updateWebAuthnCredentialCounter(userId, credentialId, credential.counter + 1n); await users.updateWebAuthnCredentialLastUsed(userId, credentialId); - return; + return credential; } - const expectedOrigin = config.auth.passkeys.allowedOrigins; - const rpID = config.auth.passkeys.rpId; let verification: VerifiedAuthenticationResponse; try { let publicKeyUint8Array: Uint8Array; @@ -405,15 +514,12 @@ export async function verifyWebAuthnAuthentication( response, expectedChallenge, expectedOrigin, - expectedRPID: rpID, - requireUserVerification: requiresWebAuthnUserVerification(context), + expectedRPID: scope.rpId, + requireUserVerification: requiresWebAuthnUserVerification(context, scope), credential: { - id: credential.credentialId, + ...toCredentialDescriptor(credential), publicKey: publicKeyUint8Array, counter: Number(credential.counter), - transports: credential.transports - ? (Array.from(credential.transports) as Array<'usb' | 'nfc' | 'ble' | 'internal' | 'cable' | 'hybrid'>) - : undefined, }, }); } catch (_error) { @@ -434,31 +540,25 @@ export async function verifyWebAuthnAuthentication( } await users.updateWebAuthnCredentialCounter(userId, credentialId, newCounter); await users.updateWebAuthnCredentialLastUsed(userId, credentialId); + return credential; } -export async function generateWebAuthnOptionsForSudo(ctx: ApiContext, userId: UserID) { - const {users, config} = ctx.services; - const credentials = await users.listWebAuthnCredentials(userId); - if (credentials.length === 0) { - throw new NoPasskeysRegisteredError(); - } - const options = await generateAuthenticationOptions({ - rpID: config.auth.passkeys.rpId, - allowCredentials: credentials.map((cred) => ({ - id: cred.credentialId, - transports: cred.transports - ? (Array.from(cred.transports) as Array<'usb' | 'nfc' | 'ble' | 'internal' | 'cable' | 'hybrid'>) - : undefined, - })), - userVerification: 'discouraged', +export async function generateWebAuthnOptionsForSudo( + ctx: ApiContext, + userId: UserID, + origin: string | null | undefined, +): Promise { + const credentials = await ctx.services.users.listWebAuthnCredentials(userId); + return generateWebAuthnAuthenticationOptions(ctx, { + selection: selectCredentialRpOrThrow(ctx, origin, credentials), + context: 'sudo', + userId, }); - await saveWebAuthnChallenge(ctx, options.challenge, {context: 'sudo', userId}); - return options; } const SUDO_MFA_USER_MAX_ATTEMPTS = 10; -async function consumeSudoMfaAttempt(ctx: ApiContext, userId: UserID): Promise { +export async function consumeSudoMfaAttempt(ctx: ApiContext, userId: UserID): Promise { const {rateLimit} = ctx.services; const userLimit = await rateLimit.checkLimit({ identifier: `sudo-mfa:user:${userId}`, @@ -535,20 +635,33 @@ function webAuthnChallengeCacheKey(challenge: string): string { return `webauthn:challenge:${challenge}`; } -function requiresWebAuthnUserVerification(context: WebAuthnChallengeContext): boolean { - return context === 'discoverable'; +function requiresWebAuthnUserVerification(context: WebAuthnChallengeContext, scope: WebAuthnChallengeScope): boolean { + return context === 'discoverable' || (context === 'bridge' && scope.credentialIds === null); } async function saveWebAuthnChallenge( ctx: ApiContext, challenge: string, - entry: {context: WebAuthnChallengeContext; userId?: UserID; ticket?: string}, + entry: { + context: WebAuthnChallengeContext; + userId?: UserID; + ticket?: string; + rpId: string; + credentialIds: Array | null; + }, ): Promise { - await ctx.services.cache.set( - webAuthnChallengeCacheKey(challenge), - {context: entry.context, userId: entry.userId?.toString(), ticket: entry.ticket}, - seconds('5 minutes'), - ); + const value: WebAuthnChallengeEntry = { + context: entry.context, + userId: entry.userId?.toString(), + ticket: entry.ticket, + rpId: entry.rpId, + credentialIds: entry.credentialIds, + }; + await ctx.services.cache.set(webAuthnChallengeCacheKey(challenge), value, seconds('5 minutes')); +} + +export async function deleteWebAuthnChallenge(ctx: ApiContext, challenge: string): Promise { + await ctx.services.cache.delete(webAuthnChallengeCacheKey(challenge)); } async function consumeWebAuthnChallenge( @@ -556,10 +669,8 @@ async function consumeWebAuthnChallenge( challenge: string, expectedContext: WebAuthnChallengeContext, {userId, ticket}: {userId?: UserID; ticket?: string} = {}, -): Promise { - const {cache} = ctx.services; - const key = webAuthnChallengeCacheKey(challenge); - const cached = await cache.get<{context: WebAuthnChallengeContext; userId?: string; ticket?: string}>(key); +): Promise { + const cached = await ctx.services.cache.getAndDelete(webAuthnChallengeCacheKey(challenge)); const challengeMatches = cached && cached.context === expectedContext && @@ -581,11 +692,14 @@ async function consumeWebAuthnChallenge( ); throw createChallengeError(expectedContext); } - await cache.delete(key); + return { + rpId: cached.rpId ?? ctx.services.config.auth.passkeys.rpId, + credentialIds: cached.credentialIds ?? null, + }; } function createChallengeError(context: WebAuthnChallengeContext) { - if (context === 'registration') { + if (context === 'registration' || context === 'migration_registration') { return new InvalidWebAuthnCredentialError(); } return new PasskeyAuthenticationFailedError(); diff --git a/fluxer_api/src/api/auth/AuthRequestService.ts b/fluxer_api/src/api/auth/AuthRequestService.ts index dc10b4001..8e21af895 100644 --- a/fluxer_api/src/api/auth/AuthRequestService.ts +++ b/fluxer_api/src/api/auth/AuthRequestService.ts @@ -280,21 +280,18 @@ export class AuthRequestService { return {completed: false}; } - async getWebAuthnAuthenticationOptions() { - return AuthMfa.generateWebAuthnAuthenticationOptionsDiscoverable(this.apiContext); + async getWebAuthnAuthenticationOptions(origin: string | undefined) { + return AuthMfa.generateWebAuthnAuthenticationOptionsDiscoverable(this.apiContext, origin); } async authenticateWebAuthnDiscoverable({data, request}: AuthWebAuthnAuthenticateRequest) { const user = await AuthMfa.verifyWebAuthnAuthenticationDiscoverable(this.apiContext, data.response, data.challenge); - const [token] = await AuthSession.createAuthSession(this.apiContext, { - user, - origin: AuthSession.resolveSessionOrigin(this.apiContext, request), - }); + const [token] = await AuthLogin.createLoginSession(this.apiContext, user, request); return {token, user_id: user.id.toString(), user: mapUserToPartialResponse(user)}; } - async getWebAuthnMfaOptions({ticket}: MfaTicketRequest) { - return AuthMfa.generateWebAuthnAuthenticationOptionsForMfa(this.apiContext, ticket); + async getWebAuthnMfaOptions({ticket}: MfaTicketRequest, origin: string | undefined) { + return AuthMfa.generateWebAuthnAuthenticationOptionsForMfa(this.apiContext, ticket, origin); } async loginMfaWebAuthn({data, request}: AuthWebAuthnMfaRequest): Promise { diff --git a/fluxer_api/src/api/auth/PasskeyBridgeController.ts b/fluxer_api/src/api/auth/PasskeyBridgeController.ts new file mode 100644 index 000000000..e6ecbb895 --- /dev/null +++ b/fluxer_api/src/api/auth/PasskeyBridgeController.ts @@ -0,0 +1,205 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import { + cancelPasskeyBridge, + completePasskeyBridge, + getPasskeyBridgeOptions, + redeemPasskeyBridgeLogin, + redeemPasskeyBridgeSudo, + startPasskeyBridgeLogin, + startPasskeyBridgeSudo, +} from '@app/api/auth/services/PasskeyBridgeService'; +import {DefaultUserOnly, LoginRequired} from '@app/api/middleware/AuthMiddleware'; +import {LocalAuthMiddleware} from '@app/api/middleware/LocalAuthMiddleware'; +import {RateLimitMiddleware} from '@app/api/middleware/RateLimitMiddleware'; +import {OpenAPI} from '@app/api/middleware/ResponseTypeMiddleware'; +import {RateLimitConfigs} from '@app/api/RateLimitConfig'; +import type {HonoApp} from '@app/api/types/HonoEnv'; +import {Validator} from '@app/api/Validator'; +import { + PasskeyBridgeCeremonyIdParam, + PasskeyBridgeCompleteRequest, + PasskeyBridgeFinishResponse, + PasskeyBridgeLoginRedeemResponse, + PasskeyBridgeLoginStartRequest, + PasskeyBridgeOptionsResponse, + PasskeyBridgeRedeemRequest, + PasskeyBridgeStartResponse, + PasskeyBridgeSudoRedeemResponse, + PasskeyBridgeSudoStartRequest, +} from '@fluxer/schema/src/domains/auth/PasskeyBridgeSchemas'; + +export function PasskeyBridgeController(app: HonoApp) { + app.post( + '/auth/passkey-bridge', + LocalAuthMiddleware, + RateLimitMiddleware(RateLimitConfigs.AUTH_PASSKEY_BRIDGE_START), + Validator('json', PasskeyBridgeLoginStartRequest), + OpenAPI({ + operationId: 'start_passkey_bridge_login', + summary: 'Start passkey bridge sign in', + responseSchema: PasskeyBridgeStartResponse, + statusCode: 200, + security: [], + tags: ['Auth'], + description: + 'Start a sign in or two-factor ceremony for a passkey that belongs to the paired first-party origin. Only available on the official instance from the new origin.', + }), + async (ctx) => { + return ctx.json( + await startPasskeyBridgeLogin(ctx.get('apiContext'), ctx.req.header('origin'), ctx.req.valid('json')), + ); + }, + ); + app.post( + '/users/@me/passkey-bridge', + RateLimitMiddleware(RateLimitConfigs.USER_PASSKEY_BRIDGE_START), + LoginRequired, + DefaultUserOnly, + Validator('json', PasskeyBridgeSudoStartRequest), + OpenAPI({ + operationId: 'start_passkey_bridge_sudo', + summary: 'Start passkey bridge sudo verification', + responseSchema: PasskeyBridgeStartResponse, + statusCode: 200, + security: ['bearerToken', 'sessionToken'], + tags: ['Users'], + description: + 'Start a sudo verification ceremony for a passkey that belongs to the paired first-party origin. Only available on the official instance from the new origin.', + }), + async (ctx) => { + return ctx.json( + await startPasskeyBridgeSudo( + ctx.get('apiContext'), + ctx.req.header('origin'), + ctx.get('user').id, + ctx.req.valid('json'), + ), + ); + }, + ); + app.post( + '/auth/passkey-bridge/:ceremony_id/options', + RateLimitMiddleware(RateLimitConfigs.AUTH_PASSKEY_BRIDGE_CEREMONY), + Validator('param', PasskeyBridgeCeremonyIdParam), + OpenAPI({ + operationId: 'get_passkey_bridge_options', + summary: 'Get passkey bridge options', + responseSchema: PasskeyBridgeOptionsResponse, + statusCode: 200, + security: [], + tags: ['Auth'], + description: + 'Issue WebAuthn authentication options for a pending passkey bridge ceremony. The request must come from the origin that runs the ceremony.', + }), + async (ctx) => { + const {ceremony_id} = ctx.req.valid('param'); + return ctx.json(await getPasskeyBridgeOptions(ctx.get('apiContext'), ceremony_id, ctx.req.header('origin'))); + }, + ); + app.post( + '/auth/passkey-bridge/:ceremony_id/complete', + RateLimitMiddleware(RateLimitConfigs.AUTH_PASSKEY_BRIDGE_CEREMONY), + Validator('param', PasskeyBridgeCeremonyIdParam), + Validator('json', PasskeyBridgeCompleteRequest), + OpenAPI({ + operationId: 'complete_passkey_bridge', + summary: 'Complete passkey bridge', + responseSchema: PasskeyBridgeFinishResponse, + statusCode: 200, + security: [], + tags: ['Auth'], + description: + 'Verify the WebAuthn response for a pending passkey bridge ceremony. A failed verification leaves the ceremony pending so it can be retried.', + }), + async (ctx) => { + const {ceremony_id} = ctx.req.valid('param'); + return ctx.json( + await completePasskeyBridge( + ctx.get('apiContext'), + ceremony_id, + ctx.req.header('origin'), + ctx.req.valid('json'), + ), + ); + }, + ); + app.post( + '/auth/passkey-bridge/:ceremony_id/cancel', + RateLimitMiddleware(RateLimitConfigs.AUTH_PASSKEY_BRIDGE_CEREMONY), + Validator('param', PasskeyBridgeCeremonyIdParam), + OpenAPI({ + operationId: 'cancel_passkey_bridge', + summary: 'Cancel passkey bridge', + responseSchema: PasskeyBridgeFinishResponse, + statusCode: 200, + security: [], + tags: ['Auth'], + description: 'Cancel a passkey bridge ceremony that has not completed.', + }), + async (ctx) => { + const {ceremony_id} = ctx.req.valid('param'); + return ctx.json(await cancelPasskeyBridge(ctx.get('apiContext'), ceremony_id, ctx.req.header('origin'))); + }, + ); + app.post( + '/auth/passkey-bridge/:ceremony_id/redeem', + LocalAuthMiddleware, + RateLimitMiddleware(RateLimitConfigs.AUTH_PASSKEY_BRIDGE_REDEEM), + Validator('param', PasskeyBridgeCeremonyIdParam), + Validator('json', PasskeyBridgeRedeemRequest), + OpenAPI({ + operationId: 'redeem_passkey_bridge_login', + summary: 'Redeem passkey bridge sign in', + responseSchema: PasskeyBridgeLoginRedeemResponse, + statusCode: 200, + security: [], + tags: ['Auth'], + description: + 'Redeem a finished sign in or two-factor passkey bridge ceremony once. Requires the nonce kept by the starting page and the completion code handed back when the ceremony finished.', + }), + async (ctx) => { + const {ceremony_id} = ctx.req.valid('param'); + return ctx.json( + await redeemPasskeyBridgeLogin( + ctx.get('apiContext'), + ceremony_id, + ctx.req.header('origin'), + ctx.req.valid('json'), + ctx.req.raw, + ), + ); + }, + ); + app.post( + '/users/@me/passkey-bridge/:ceremony_id/redeem', + RateLimitMiddleware(RateLimitConfigs.USER_PASSKEY_BRIDGE_REDEEM), + LoginRequired, + DefaultUserOnly, + Validator('param', PasskeyBridgeCeremonyIdParam), + Validator('json', PasskeyBridgeRedeemRequest), + OpenAPI({ + operationId: 'redeem_passkey_bridge_sudo', + summary: 'Redeem passkey bridge sudo verification', + responseSchema: PasskeyBridgeSudoRedeemResponse, + statusCode: 200, + security: ['bearerToken', 'sessionToken'], + tags: ['Users'], + description: + 'Redeem a finished sudo passkey bridge ceremony once for a sudo mode token. Requires the nonce kept by the starting page and the completion code handed back when the ceremony finished.', + }), + async (ctx) => { + const {ceremony_id} = ctx.req.valid('param'); + return ctx.json( + await redeemPasskeyBridgeSudo( + ctx.get('apiContext'), + ceremony_id, + ctx.req.header('origin'), + ctx.req.valid('json'), + ctx.get('user').id, + ctx.get('authSession'), + ), + ); + }, + ); +} diff --git a/fluxer_api/src/api/auth/services/PasskeyBridgeService.ts b/fluxer_api/src/api/auth/services/PasskeyBridgeService.ts new file mode 100644 index 000000000..b968ced06 --- /dev/null +++ b/fluxer_api/src/api/auth/services/PasskeyBridgeService.ts @@ -0,0 +1,436 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {createHash, randomBytes, timingSafeEqual} from 'node:crypto'; +import type {ApiContext} from '@app/api/ApiContext'; +import * as AuthLogin from '@app/api/auth/AuthLogin'; +import * as AuthMfa from '@app/api/auth/AuthMfa'; +import * as AuthUtility from '@app/api/auth/AuthUtility'; +import {recordPendingPasskeyMigration} from '@app/api/auth/services/PasskeyMigrationService'; +import { + effectiveRpId, + isPasskeyMigrationActive, + isPasskeyTargetOrigin, + passkeyLegacyOriginFor, + visibleWebAuthnCredentials, +} from '@app/api/auth/services/PasskeyRelyingParty'; +import {getSudoModeService} from '@app/api/auth/services/SudoModeService'; +import {resolveWebAuthnSecondFactor} from '@app/api/auth/services/WebAuthnSecondFactor'; +import {createUserID, type UserID} from '@app/api/BrandedTypes'; +import type {AuthSession} from '@app/api/models/AuthSession'; +import type {User} from '@app/api/models/User'; +import type {WebAuthnCredential} from '@app/api/models/WebAuthnCredential'; +import {mapUserToPartialResponse} from '@app/api/user/UserMappers'; +import {PASSKEY_BRIDGE_PATH, PASSKEY_BRIDGE_RETURN_FRAGMENT_KEY} from '@fluxer/constants/src/PasskeyConstants'; +import {ValidationErrorCodes} from '@fluxer/constants/src/ValidationErrorCodes'; +import {InvalidPasskeyBridgeNonceError} from '@fluxer/errors/src/domains/auth/InvalidPasskeyBridgeNonceError'; +import {MfaNotEnabledError} from '@fluxer/errors/src/domains/auth/MfaNotEnabledError'; +import {NoPasskeysRegisteredError} from '@fluxer/errors/src/domains/auth/NoPasskeysRegisteredError'; +import {PasskeyAuthenticationFailedError} from '@fluxer/errors/src/domains/auth/PasskeyAuthenticationFailedError'; +import {UnknownPasskeyBridgeError} from '@fluxer/errors/src/domains/auth/UnknownPasskeyBridgeError'; +import {InputValidationError} from '@fluxer/errors/src/domains/core/InputValidationError'; +import {InvalidApiOriginError} from '@fluxer/errors/src/domains/core/InvalidApiOriginError'; +import type { + PasskeyBridgeCompleteRequest, + PasskeyBridgeFinishResponse, + PasskeyBridgeLoginRedeemResponse, + PasskeyBridgeLoginStartRequest, + PasskeyBridgeRedeemRequest, + PasskeyBridgeRunner, + PasskeyBridgeStartResponse, + PasskeyBridgeSudoRedeemResponse, + PasskeyBridgeSudoStartRequest, +} from '@fluxer/schema/src/domains/auth/PasskeyBridgeSchemas'; +import type {PublicKeyCredentialRequestOptionsJSON} from '@simplewebauthn/server'; +import {ms, seconds} from 'itty-time'; + +type PasskeyBridgePurpose = 'login' | 'login_mfa' | 'sudo'; + +interface PasskeyBridgeRecord { + purpose: PasskeyBridgePurpose; + runner: PasskeyBridgeRunner; + target_origin: string; + ceremony_origin: string; + nonce_hash: string; + user_id: string | null; + ticket: string | null; + challenge: string | null; + credential_id: string | null; + cross_device: boolean; + completion_code_hash: string | null; + status: 'pending' | 'completed' | 'cancelled'; + created_at: number; + expires_at: number; +} + +interface CompletedPasskeyBridge { + record: PasskeyBridgeRecord; + userId: UserID; +} + +const PASSKEY_BRIDGE_KEY_PREFIX = 'passkey_bridge:'; +const PASSKEY_BRIDGE_LOCK_PREFIX = 'passkey_bridge_lock:'; +const PASSKEY_BRIDGE_SECRET_BYTES = 32; + +function sha256Hex(value: string): string { + return createHash('sha256').update(value).digest('hex'); +} + +function hashMatches(value: string, storedHash: string | null): boolean { + if (storedHash === null) return false; + const presented = Buffer.from(sha256Hex(value), 'hex'); + const stored = Buffer.from(storedHash, 'hex'); + return presented.length === stored.length && timingSafeEqual(presented, stored); +} + +function createSecret(): string { + return randomBytes(PASSKEY_BRIDGE_SECRET_BYTES).toString('base64url'); +} + +function passkeyBridgeKey(ceremonyId: string): string { + return `${PASSKEY_BRIDGE_KEY_PREFIX}${sha256Hex(ceremonyId)}`; +} + +async function writeRecord(ctx: ApiContext, ceremonyId: string, record: PasskeyBridgeRecord): Promise { + const ttlSeconds = Math.floor((record.expires_at - Date.now()) / 1000); + if (ttlSeconds <= 0) { + throw new UnknownPasskeyBridgeError(); + } + await ctx.services.cache.set(passkeyBridgeKey(ceremonyId), record, ttlSeconds); +} + +function assertCeremonyOrigin( + ctx: ApiContext, + record: PasskeyBridgeRecord, + origin: string | undefined, + expectedOrigin: string, +): void { + if (origin !== expectedOrigin || !isPasskeyTargetOrigin(ctx, record.target_origin)) { + throw new InvalidApiOriginError(); + } +} + +async function mutateRecord( + ctx: ApiContext, + ceremonyId: string, + origin: string | undefined, + mutate: (record: PasskeyBridgeRecord) => Promise, +): Promise { + const {cache} = ctx.services; + const lockKey = `${PASSKEY_BRIDGE_LOCK_PREFIX}${sha256Hex(ceremonyId)}`; + const lockToken = await cache.acquireLock(lockKey, seconds('10 seconds')); + if (!lockToken) { + throw new UnknownPasskeyBridgeError(); + } + try { + const record = await cache.get(passkeyBridgeKey(ceremonyId)); + if (!record) { + throw new UnknownPasskeyBridgeError(); + } + assertCeremonyOrigin(ctx, record, origin, record.ceremony_origin); + return await mutate(record); + } finally { + await cache.releaseLock(lockKey, lockToken); + } +} + +async function requireMfaTicketUser(ctx: ApiContext, ticket: string, expectedUserId?: string): Promise { + const userId = await ctx.services.cache.get(`mfa-ticket:${ticket}`); + if (!userId || (expectedUserId !== undefined && userId !== expectedUserId)) { + throw InputValidationError.fromCode('ticket', ValidationErrorCodes.SESSION_TIMEOUT); + } + const user = await ctx.services.users.findUniqueAssert(createUserID(BigInt(userId))); + AuthUtility.assertNonBotUser(ctx, user); + return user; +} + +async function requireLegacyCredentials(ctx: ApiContext, userId: UserID): Promise> { + const legacyRpId = ctx.services.config.auth.passkeys.rpId; + const credentials = visibleWebAuthnCredentials(await ctx.services.users.listWebAuthnCredentials(userId)).filter( + (credential) => effectiveRpId(ctx, credential) === legacyRpId, + ); + if (credentials.length === 0) { + throw new NoPasskeysRegisteredError(); + } + return credentials; +} + +function assertBridgeStartOrigin(ctx: ApiContext, origin: string | undefined): string { + if (!origin || !isPasskeyTargetOrigin(ctx, origin)) { + throw new InvalidApiOriginError(); + } + return origin; +} + +async function startPasskeyBridge( + ctx: ApiContext, + origin: string, + fields: Pick, +): Promise { + const ceremonyId = createSecret(); + const createdAt = Date.now(); + const ceremonyOrigin = fields.runner === 'page' ? passkeyLegacyOriginFor(origin) : origin; + await writeRecord(ctx, ceremonyId, { + ...fields, + target_origin: origin, + ceremony_origin: ceremonyOrigin, + challenge: null, + credential_id: null, + cross_device: false, + completion_code_hash: null, + status: 'pending', + created_at: createdAt, + expires_at: createdAt + (fields.purpose === 'login_mfa' ? ms('5 minutes') : ms('10 minutes')), + }); + return { + ceremony_id: ceremonyId, + bridge_url: fields.runner === 'page' ? `${ceremonyOrigin}${PASSKEY_BRIDGE_PATH}#${ceremonyId}` : null, + }; +} + +export async function startPasskeyBridgeLogin( + ctx: ApiContext, + origin: string | undefined, + data: PasskeyBridgeLoginStartRequest, +): Promise { + const targetOrigin = assertBridgeStartOrigin(ctx, origin); + let userId: string | null = null; + if (data.purpose === 'login_mfa') { + const user = await requireMfaTicketUser(ctx, data.ticket!); + if (!(await resolveWebAuthnSecondFactor(ctx, user))) { + throw new MfaNotEnabledError(); + } + await requireLegacyCredentials(ctx, user.id); + userId = user.id.toString(); + } + return startPasskeyBridge(ctx, targetOrigin, { + purpose: data.purpose, + runner: data.runner, + nonce_hash: data.nonce_hash, + user_id: userId, + ticket: data.ticket ?? null, + }); +} + +export async function startPasskeyBridgeSudo( + ctx: ApiContext, + origin: string | undefined, + userId: UserID, + data: PasskeyBridgeSudoStartRequest, +): Promise { + const targetOrigin = assertBridgeStartOrigin(ctx, origin); + await requireLegacyCredentials(ctx, userId); + return startPasskeyBridge(ctx, targetOrigin, { + purpose: 'sudo', + runner: data.runner, + nonce_hash: data.nonce_hash, + user_id: userId.toString(), + ticket: null, + }); +} + +export async function getPasskeyBridgeOptions( + ctx: ApiContext, + ceremonyId: string, + origin: string | undefined, +): Promise<{options: PublicKeyCredentialRequestOptionsJSON}> { + return mutateRecord(ctx, ceremonyId, origin, async (record) => { + if (record.status !== 'pending') { + throw new UnknownPasskeyBridgeError(); + } + const legacyRpId = ctx.services.config.auth.passkeys.rpId; + const userId = record.user_id === null ? undefined : createUserID(BigInt(record.user_id)); + const options = await AuthMfa.generateWebAuthnAuthenticationOptions(ctx, { + selection: { + rpId: legacyRpId, + credentials: userId === undefined ? null : await requireLegacyCredentials(ctx, userId), + }, + context: 'bridge', + userId, + }); + if (record.challenge !== null) { + await AuthMfa.deleteWebAuthnChallenge(ctx, record.challenge); + } + await writeRecord(ctx, ceremonyId, {...record, challenge: options.challenge}); + return {options}; + }); +} + +function buildReturnUrl(record: PasskeyBridgeRecord, ceremonyId: string, completionCode: string): string { + return `${record.target_origin}${PASSKEY_BRIDGE_PATH}#${PASSKEY_BRIDGE_RETURN_FRAGMENT_KEY}=${ceremonyId}.${completionCode}`; +} + +async function finishRecord( + ctx: ApiContext, + ceremonyId: string, + record: PasskeyBridgeRecord, +): Promise { + const completionCode = createSecret(); + await writeRecord(ctx, ceremonyId, {...record, completion_code_hash: sha256Hex(completionCode)}); + if (record.runner === 'native') { + return {return_url: null, completion_code: completionCode}; + } + return {return_url: buildReturnUrl(record, ceremonyId, completionCode), completion_code: null}; +} + +export async function completePasskeyBridge( + ctx: ApiContext, + ceremonyId: string, + origin: string | undefined, + data: PasskeyBridgeCompleteRequest, +): Promise { + return mutateRecord(ctx, ceremonyId, origin, async (record) => { + if (record.status !== 'pending') { + throw new UnknownPasskeyBridgeError(); + } + const {users} = ctx.services; + const credentialId = data.response.id; + const userId = + record.user_id === null + ? await users.getUserIdByCredentialId(credentialId) + : createUserID(BigInt(record.user_id)); + const credential = userId === null ? null : await users.getWebAuthnCredential(userId, credentialId); + if ( + userId === null || + record.challenge === null || + credential === null || + credential.supersededBy !== null || + effectiveRpId(ctx, credential) !== ctx.services.config.auth.passkeys.rpId + ) { + throw new PasskeyAuthenticationFailedError(); + } + if (record.purpose === 'login_mfa') { + await requireMfaTicketUser(ctx, record.ticket!, record.user_id!); + await AuthLogin.consumeMfaAttempt(ctx, {userId: record.user_id!, ticket: record.ticket!, field: 'ticket'}); + } else if (record.purpose === 'sudo') { + await AuthMfa.consumeSudoMfaAttempt(ctx, userId); + } + await AuthMfa.verifyWebAuthnAuthentication(ctx, userId, data.response, record.challenge, 'bridge', undefined, [ + record.ceremony_origin, + ]); + return finishRecord(ctx, ceremonyId, { + ...record, + status: 'completed', + user_id: userId.toString(), + credential_id: credentialId, + cross_device: data.response.authenticatorAttachment === 'cross-platform', + }); + }); +} + +export async function cancelPasskeyBridge( + ctx: ApiContext, + ceremonyId: string, + origin: string | undefined, +): Promise { + return mutateRecord(ctx, ceremonyId, origin, async (record) => { + if (record.status === 'completed') { + throw new UnknownPasskeyBridgeError(); + } + return finishRecord(ctx, ceremonyId, {...record, status: 'cancelled'}); + }); +} + +function assertRedeemable( + record: PasskeyBridgeRecord | null, + purposes: ReadonlyArray, + expectedUserId: UserID | null, +): asserts record is PasskeyBridgeRecord { + if ( + !record || + !purposes.includes(record.purpose) || + (expectedUserId !== null && record.user_id !== expectedUserId.toString()) || + record.status === 'pending' + ) { + throw new UnknownPasskeyBridgeError(); + } +} + +async function redeemPasskeyBridge( + ctx: ApiContext, + ceremonyId: string, + origin: string | undefined, + data: PasskeyBridgeRedeemRequest, + purposes: ReadonlyArray, + expectedUserId: UserID | null, +): Promise { + const {cache} = ctx.services; + const key = passkeyBridgeKey(ceremonyId); + const record = await cache.get(key); + if (!record) { + throw new UnknownPasskeyBridgeError(); + } + assertCeremonyOrigin(ctx, record, origin, record.target_origin); + assertRedeemable(record, purposes, expectedUserId); + if (!hashMatches(data.nonce, record.nonce_hash) || !hashMatches(data.completion_code, record.completion_code_hash)) { + await cache.delete(key); + throw new InvalidPasskeyBridgeNonceError(); + } + const taken = await cache.getAndDelete(key); + assertRedeemable(taken, purposes, expectedUserId); + if (!hashMatches(data.nonce, taken.nonce_hash) || !hashMatches(data.completion_code, taken.completion_code_hash)) { + throw new InvalidPasskeyBridgeNonceError(); + } + if (taken.status === 'cancelled') { + return null; + } + return {record: taken, userId: createUserID(BigInt(taken.user_id!))}; +} + +async function recordMigrationIfActive( + ctx: ApiContext, + origin: string | undefined, + completed: CompletedPasskeyBridge, + authSession: AuthSession | undefined, +): Promise { + if (!authSession || !(await isPasskeyMigrationActive(ctx, origin))) return; + await recordPendingPasskeyMigration(ctx, authSession, { + user_id: completed.userId.toString(), + credential_id: completed.record.credential_id!, + cross_device: completed.record.cross_device, + }); +} + +export async function redeemPasskeyBridgeLogin( + ctx: ApiContext, + ceremonyId: string, + origin: string | undefined, + data: PasskeyBridgeRedeemRequest, + request: Request, +): Promise { + const completed = await redeemPasskeyBridge(ctx, ceremonyId, origin, data, ['login', 'login_mfa'], null); + if (!completed) { + return {status: 'cancelled'}; + } + let token: string; + let authSession: AuthSession; + let user: User; + if (completed.record.purpose === 'login_mfa') { + user = await requireMfaTicketUser(ctx, completed.record.ticket!, completed.record.user_id!); + if (!(await resolveWebAuthnSecondFactor(ctx, user))) { + throw new MfaNotEnabledError(); + } + [token, authSession] = await AuthLogin.completeMfaLogin(ctx, user, completed.record.ticket!, request); + } else { + user = await ctx.services.users.findUniqueAssert(completed.userId); + [token, authSession] = await AuthLogin.createLoginSession(ctx, user, request); + } + await recordMigrationIfActive(ctx, origin, completed, authSession); + return {status: 'completed', token, user_id: user.id.toString(), user: mapUserToPartialResponse(user)}; +} + +export async function redeemPasskeyBridgeSudo( + ctx: ApiContext, + ceremonyId: string, + origin: string | undefined, + data: PasskeyBridgeRedeemRequest, + userId: UserID, + authSession: AuthSession | undefined, +): Promise { + const completed = await redeemPasskeyBridge(ctx, ceremonyId, origin, data, ['sudo'], userId); + if (!completed) { + return {status: 'cancelled'}; + } + const sudoToken = await getSudoModeService().generateSudoToken(userId); + await recordMigrationIfActive(ctx, origin, completed, authSession); + return {status: 'completed', sudo_token: sudoToken}; +} diff --git a/fluxer_api/src/api/auth/services/PasskeyMigrationService.ts b/fluxer_api/src/api/auth/services/PasskeyMigrationService.ts new file mode 100644 index 000000000..f3244a773 --- /dev/null +++ b/fluxer_api/src/api/auth/services/PasskeyMigrationService.ts @@ -0,0 +1,166 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import type {ApiContext} from '@app/api/ApiContext'; +import * as AuthMfa from '@app/api/auth/AuthMfa'; +import { + effectiveRpId, + isPasskeyTargetOrigin, + visibleWebAuthnCredentials, +} from '@app/api/auth/services/PasskeyRelyingParty'; +import type {UserID} from '@app/api/BrandedTypes'; +import type {AuthSession} from '@app/api/models/AuthSession'; +import type {WebAuthnCredential} from '@app/api/models/WebAuthnCredential'; +import {PASSKEY_MIGRATION_RP_ID} from '@fluxer/constants/src/PasskeyConstants'; +import {UnknownPasskeyMigrationError} from '@fluxer/errors/src/domains/auth/UnknownPasskeyMigrationError'; +import type { + PasskeyMigrationCompleteRequest, + PasskeyMigrationResponse, +} from '@fluxer/schema/src/domains/auth/PasskeyMigrationSchemas'; +import type {PublicKeyCredentialCreationOptionsJSON} from '@simplewebauthn/server'; +import {seconds} from 'itty-time'; + +const PASSKEY_MIGRATION_KEY_PREFIX = 'passkey_migration:'; + +interface PendingPasskeyMigration { + user_id: string; + credential_id: string; + cross_device: boolean; +} + +interface LivePasskeyMigration { + key: string; + pending: PendingPasskeyMigration; + credential: WebAuthnCredential; +} + +function passkeyMigrationKey(authSession: AuthSession): string { + return `${PASSKEY_MIGRATION_KEY_PREFIX}${authSession.sessionIdHash.toString('base64url')}`; +} + +function isLegacyVisibleCredential(ctx: ApiContext, credential: WebAuthnCredential): boolean { + return credential.supersededBy === null && effectiveRpId(ctx, credential) === ctx.services.config.auth.passkeys.rpId; +} + +export async function recordPendingPasskeyMigration( + ctx: ApiContext, + authSession: AuthSession, + pending: PendingPasskeyMigration, +): Promise { + await ctx.services.cache.set(passkeyMigrationKey(authSession), pending, seconds('5 minutes')); +} + +async function loadLivePasskeyMigration( + ctx: ApiContext, + userId: UserID, + authSession: AuthSession | undefined, +): Promise { + if (!authSession) return null; + const {cache, users} = ctx.services; + const key = passkeyMigrationKey(authSession); + const pending = await cache.get(key); + if (!pending) return null; + const credential = + pending.user_id === userId.toString() ? await users.getWebAuthnCredential(userId, pending.credential_id) : null; + if (credential === null || !isLegacyVisibleCredential(ctx, credential)) { + await cache.delete(key); + return null; + } + return {key, pending, credential}; +} + +async function requireLivePasskeyMigration( + ctx: ApiContext, + userId: UserID, + authSession: AuthSession | undefined, + origin: string | undefined, +): Promise { + const live = isPasskeyTargetOrigin(ctx, origin) ? await loadLivePasskeyMigration(ctx, userId, authSession) : null; + if (!live) { + throw new UnknownPasskeyMigrationError(); + } + return live; +} + +async function takeLivePasskeyMigration(ctx: ApiContext, userId: UserID, key: string): Promise { + const pending = await ctx.services.cache.getAndDelete(key); + if (!pending || pending.user_id !== userId.toString()) { + throw new UnknownPasskeyMigrationError(); + } + const credential = await ctx.services.users.getWebAuthnCredential(userId, pending.credential_id); + if (credential === null || !isLegacyVisibleCredential(ctx, credential)) { + throw new UnknownPasskeyMigrationError(); + } + return credential; +} + +function visibleTargetCredentials(ctx: ApiContext, credentials: Array): Array { + return visibleWebAuthnCredentials(credentials).filter( + (credential) => effectiveRpId(ctx, credential) === PASSKEY_MIGRATION_RP_ID, + ); +} + +export async function getPasskeyMigration( + ctx: ApiContext, + userId: UserID, + authSession: AuthSession | undefined, +): Promise { + const live = await loadLivePasskeyMigration(ctx, userId, authSession); + if (!live) return {pending: null}; + return { + pending: { + credential_id: live.credential.credentialId, + name: live.credential.name, + cross_device: live.pending.cross_device, + }, + }; +} + +export async function getPasskeyMigrationRegistrationOptions( + ctx: ApiContext, + userId: UserID, + authSession: AuthSession | undefined, + origin: string | undefined, +): Promise { + const live = await requireLivePasskeyMigration(ctx, userId, authSession, origin); + const credentials = await ctx.services.users.listWebAuthnCredentials(userId); + const options = await AuthMfa.createWebAuthnRegistrationOptions(ctx, userId, { + rpId: PASSKEY_MIGRATION_RP_ID, + context: 'migration_registration', + excludeCredentials: visibleTargetCredentials(ctx, credentials), + }); + if (live.pending.cross_device) { + options.hints = ['hybrid', 'security-key']; + } + return options; +} + +export async function completePasskeyMigration( + ctx: ApiContext, + userId: UserID, + authSession: AuthSession | undefined, + origin: string | undefined, + data: PasskeyMigrationCompleteRequest, +): Promise { + const {users} = ctx.services; + const live = await requireLivePasskeyMigration(ctx, userId, authSession, origin); + const verified = await AuthMfa.verifyWebAuthnRegistrationResponse( + ctx, + userId, + data.response, + data.challenge, + 'migration_registration', + [origin!], + ); + const legacy = await takeLivePasskeyMigration(ctx, userId, live.key); + await users.createWebAuthnCredential( + userId, + verified.credentialId, + verified.publicKey, + verified.counter, + verified.transports, + legacy.name, + AuthMfa.storedRpId(ctx, verified.rpId), + ); + await users.setWebAuthnCredentialSupersededBy(userId, legacy.credentialId, verified.credentialId); + await AuthMfa.dispatchWebAuthnCredentialsUpdate(ctx, userId); +} diff --git a/fluxer_api/src/api/auth/services/PasskeyRelyingParty.ts b/fluxer_api/src/api/auth/services/PasskeyRelyingParty.ts new file mode 100644 index 000000000..dbb6027a8 --- /dev/null +++ b/fluxer_api/src/api/auth/services/PasskeyRelyingParty.ts @@ -0,0 +1,62 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import type {ApiContext} from '@app/api/ApiContext'; +import {getInstanceConfigRepository} from '@app/api/middleware/ServiceSingletons'; +import type {WebAuthnCredential} from '@app/api/models/WebAuthnCredential'; +import {PASSKEY_MIGRATION_RP_ID} from '@fluxer/constants/src/PasskeyConstants'; + +const PASSKEY_TARGET_TO_LEGACY_ORIGIN: ReadonlyMap = new Map([ + ['https://fluxer.com', 'https://web.fluxer.app'], + ['https://canary.fluxer.com', 'https://web.canary.fluxer.app'], +]); + +export interface CredentialRpSelection { + rpId: string; + credentials: Array; +} + +export function isPasskeyTargetOrigin(ctx: ApiContext, origin: string | null | undefined): boolean { + if (ctx.services.config.instance.selfHosted || !origin) return false; + return PASSKEY_TARGET_TO_LEGACY_ORIGIN.has(origin); +} + +export function passkeyLegacyOriginFor(targetOrigin: string): string { + return PASSKEY_TARGET_TO_LEGACY_ORIGIN.get(targetOrigin)!; +} + +export function effectiveRpId(ctx: ApiContext, credential: WebAuthnCredential): string { + return credential.rpId ?? ctx.services.config.auth.passkeys.rpId; +} + +export function visibleWebAuthnCredentials(credentials: Array): Array { + return credentials.filter((credential) => credential.supersededBy === null); +} + +export function originRpId(ctx: ApiContext, origin: string | null | undefined): string { + return isPasskeyTargetOrigin(ctx, origin) ? PASSKEY_MIGRATION_RP_ID : ctx.services.config.auth.passkeys.rpId; +} + +export async function isPasskeyMigrationActive(ctx: ApiContext, origin: string | null | undefined): Promise { + if (!isPasskeyTargetOrigin(ctx, origin)) return false; + const config = await getInstanceConfigRepository().getDomainMigrationConfig(); + return config.enabled; +} + +function credentialGroup(ctx: ApiContext, credentials: Array, rpId: string): CredentialRpSelection { + return {rpId, credentials: credentials.filter((credential) => effectiveRpId(ctx, credential) === rpId)}; +} + +export function selectCredentialRp( + ctx: ApiContext, + origin: string | null | undefined, + credentials: Array, +): CredentialRpSelection { + const legacyRpId = ctx.services.config.auth.passkeys.rpId; + const visible = visibleWebAuthnCredentials(credentials); + if (isPasskeyTargetOrigin(ctx, origin)) { + const target = credentialGroup(ctx, visible, PASSKEY_MIGRATION_RP_ID); + return target.credentials.length > 0 ? target : credentialGroup(ctx, visible, legacyRpId); + } + const legacy = credentialGroup(ctx, credentials, legacyRpId); + return legacy.credentials.length > 0 ? legacy : credentialGroup(ctx, visible, PASSKEY_MIGRATION_RP_ID); +} diff --git a/fluxer_api/src/api/auth/tests/PasskeyBridge.test.ts b/fluxer_api/src/api/auth/tests/PasskeyBridge.test.ts new file mode 100644 index 000000000..389c3b8d1 --- /dev/null +++ b/fluxer_api/src/api/auth/tests/PasskeyBridge.test.ts @@ -0,0 +1,391 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {createHash} from 'node:crypto'; +import { + createAuthHarness, + createTestAccount, + type LoginMfaResponse, + loginUser, + type TestAccount, +} from '@app/api/auth/tests/AuthTestUtils'; +import { + type BridgeNonce, + createBridgeNonce, + LEGACY_ORIGIN, + LEGACY_RP_ID, + registerPasskey, + runNativeSudoBridge, + setDomainMigration, + TARGET_ORIGIN, +} from '@app/api/auth/tests/PasskeyTestUtils'; +import { + createAuthenticationResponse, + createTotpSecret, + createWebAuthnDevice, + generateTotpCode, + setWebAuthnTwoFactor, + type WebAuthnAuthenticationOptions, + type WebAuthnDevice, +} from '@app/api/auth/tests/WebAuthnTestUtils'; +import {getConfig} from '@app/api/Config'; +import {getCacheService} from '@app/api/middleware/ServiceSingletons'; +import type {ApiTestHarness} from '@app/api/test/ApiTestHarness'; +import {HTTP_STATUS} from '@app/api/test/TestConstants'; +import {createBuilder, createBuilderWithoutAuth} from '@app/api/test/TestRequestBuilder'; +import {APIErrorCodes} from '@fluxer/constants/src/ApiErrorCodes'; +import type { + PasskeyBridgeFinishResponse, + PasskeyBridgeLoginRedeemResponse, + PasskeyBridgeStartResponse, + PasskeyBridgeSudoRedeemResponse, +} from '@fluxer/schema/src/domains/auth/PasskeyBridgeSchemas'; +import {afterAll, afterEach, beforeAll, beforeEach, describe, expect, it} from 'vitest'; + +const SUDO_MODE_HEADER = 'X-Fluxer-Sudo-Mode-JWT'; + +interface StartedBridge { + ceremonyId: string; + bridgeUrl: string | null; + nonce: BridgeNonce; +} + +describe('Passkey bridge', () => { + let harness: ApiTestHarness; + + beforeAll(async () => { + harness = await createAuthHarness(); + }); + + beforeEach(async () => { + await harness.reset(); + await setDomainMigration(true); + }); + + afterEach(() => { + getConfig().instance.selfHosted = false; + }); + + afterAll(async () => { + await harness?.shutdown(); + }); + + async function createLegacyAccount(): Promise<{account: TestAccount; device: WebAuthnDevice}> { + const account = await createTestAccount(harness); + const device = createWebAuthnDevice(); + await registerPasskey(harness, account.token, device, {password: account.password}, 'Old'); + return {account, device}; + } + + async function startLogin(body: Record = {}, origin = TARGET_ORIGIN): Promise { + const nonce = createBridgeNonce(); + const start = await createBuilderWithoutAuth(harness) + .post('/auth/passkey-bridge') + .header('origin', origin) + .body({purpose: 'login', runner: 'page', nonce_hash: nonce.nonceHash, ...body}) + .execute(); + return {ceremonyId: start.ceremony_id, bridgeUrl: start.bridge_url, nonce}; + } + + async function startSudo(token: string, runner: 'page' | 'native' = 'page'): Promise { + const nonce = createBridgeNonce(); + const start = await createBuilder(harness, token) + .post('/users/@me/passkey-bridge') + .header('origin', TARGET_ORIGIN) + .body({runner, nonce_hash: nonce.nonceHash}) + .execute(); + return {ceremonyId: start.ceremony_id, bridgeUrl: start.bridge_url, nonce}; + } + + async function fetchOptions(ceremonyId: string, origin = LEGACY_ORIGIN): Promise { + const {options} = await createBuilderWithoutAuth<{options: WebAuthnAuthenticationOptions}>(harness) + .post(`/auth/passkey-bridge/${ceremonyId}/options`) + .header('origin', origin) + .execute(); + return options; + } + + async function complete( + ceremonyId: string, + device: WebAuthnDevice, + origin = LEGACY_ORIGIN, + ): Promise { + const options = await fetchOptions(ceremonyId, origin); + return createBuilderWithoutAuth(harness) + .post(`/auth/passkey-bridge/${ceremonyId}/complete`) + .header('origin', origin) + .body({response: createAuthenticationResponse(device, options)}) + .execute(); + } + + function completionCodeFrom(finish: PasskeyBridgeFinishResponse, ceremonyId: string): string { + const url = new URL(finish.return_url!); + const [id, code] = url.hash.slice('#passkey-bridge='.length).split('.'); + expect(id).toBe(ceremonyId); + return code; + } + + function redeemLogin(ceremonyId: string, nonce: string, completionCode: string) { + return createBuilderWithoutAuth(harness) + .post(`/auth/passkey-bridge/${ceremonyId}/redeem`) + .header('origin', TARGET_ORIGIN) + .body({nonce, completion_code: completionCode}); + } + + it('refuses to start outside the new origin and on a self-hosted instance, whatever the switch', async () => { + const nonce = createBridgeNonce(); + const body = {purpose: 'login', runner: 'native', nonce_hash: nonce.nonceHash}; + for (const origin of [LEGACY_ORIGIN, 'https://evil.example']) { + await createBuilderWithoutAuth(harness) + .post('/auth/passkey-bridge') + .header('origin', origin) + .body(body) + .expect(HTTP_STATUS.FORBIDDEN, APIErrorCodes.INVALID_API_ORIGIN) + .execute(); + } + await createBuilderWithoutAuth(harness) + .post('/auth/passkey-bridge') + .body(body) + .expect(HTTP_STATUS.FORBIDDEN, APIErrorCodes.INVALID_API_ORIGIN) + .execute(); + getConfig().instance.selfHosted = true; + await createBuilderWithoutAuth(harness) + .post('/auth/passkey-bridge') + .header('origin', TARGET_ORIGIN) + .body(body) + .expect(HTTP_STATUS.FORBIDDEN, APIErrorCodes.INVALID_API_ORIGIN) + .execute(); + getConfig().instance.selfHosted = false; + await setDomainMigration(false); + await createBuilderWithoutAuth(harness) + .post('/auth/passkey-bridge') + .header('origin', TARGET_ORIGIN) + .body(body) + .expect(HTTP_STATUS.OK) + .execute(); + }); + + it('runs the ceremony only on the paired origin and keeps going when the switch goes off', async () => { + const {device} = await createLegacyAccount(); + const started = await startLogin(); + expect(started.bridgeUrl).toBe(`${LEGACY_ORIGIN}/passkey-bridge#${started.ceremonyId}`); + await createBuilderWithoutAuth(harness) + .post(`/auth/passkey-bridge/${started.ceremonyId}/options`) + .header('origin', TARGET_ORIGIN) + .expect(HTTP_STATUS.FORBIDDEN, APIErrorCodes.INVALID_API_ORIGIN) + .execute(); + const options = await fetchOptions(started.ceremonyId); + expect(options.rpId).toBe(LEGACY_RP_ID); + expect(options.allowCredentials).toBeUndefined(); + expect(options.userVerification).toBe('required'); + await setDomainMigration(false); + await createBuilderWithoutAuth(harness) + .post(`/auth/passkey-bridge/${started.ceremonyId}/complete`) + .header('origin', LEGACY_ORIGIN) + .body({response: createAuthenticationResponse(device, options)}) + .expect(HTTP_STATUS.OK) + .execute(); + }); + + it('signs in through a page ceremony and always returns to the bridge page', async () => { + const {account, device} = await createLegacyAccount(); + const started = await startLogin({ + return_path: '/api/v1/oauth2/authorize?prompt=none&redirect_uri=https://evil.example/cb', + }); + const finish = await complete(started.ceremonyId, device); + expect(finish.completion_code).toBeNull(); + const returnUrl = new URL(finish.return_url!); + expect(`${returnUrl.origin}${returnUrl.pathname}${returnUrl.search}`).toBe(`${TARGET_ORIGIN}/passkey-bridge`); + const code = completionCodeFrom(finish, started.ceremonyId); + const redeemed = await redeemLogin(started.ceremonyId, started.nonce.nonce, code).execute(); + expect(redeemed.status).toBe('completed'); + if (redeemed.status !== 'completed') return; + expect(redeemed.user_id).toBe(account.userId); + const me = await createBuilder<{id: string}>(harness, redeemed.token).get('/users/@me').execute(); + expect(me.id).toBe(account.userId); + await redeemLogin(started.ceremonyId, started.nonce.nonce, code) + .expect(HTTP_STATUS.NOT_FOUND, APIErrorCodes.UNKNOWN_PASSKEY_BRIDGE) + .execute(); + }); + + it('needs both the nonce and the completion code', async () => { + const {device} = await createLegacyAccount(); + const started = await startLogin(); + const code = completionCodeFrom(await complete(started.ceremonyId, device), started.ceremonyId); + const attacker = createBridgeNonce(); + await redeemLogin(started.ceremonyId, attacker.nonce, code) + .expect(HTTP_STATUS.BAD_REQUEST, APIErrorCodes.INVALID_PASSKEY_BRIDGE_NONCE) + .execute(); + await redeemLogin(started.ceremonyId, started.nonce.nonce, code) + .expect(HTTP_STATUS.NOT_FOUND, APIErrorCodes.UNKNOWN_PASSKEY_BRIDGE) + .execute(); + + const second = await startLogin(); + completionCodeFrom(await complete(second.ceremonyId, device), second.ceremonyId); + await redeemLogin(second.ceremonyId, second.nonce.nonce, 'A'.repeat(43)) + .expect(HTTP_STATUS.BAD_REQUEST, APIErrorCodes.INVALID_PASSKEY_BRIDGE_NONCE) + .execute(); + await redeemLogin(second.ceremonyId, second.nonce.nonce, 'A'.repeat(43)) + .expect(HTTP_STATUS.NOT_FOUND, APIErrorCodes.UNKNOWN_PASSKEY_BRIDGE) + .execute(); + }); + + it('keeps a pending ceremony when redeemed early or verification fails', async () => { + const {account, device} = await createLegacyAccount(); + const target = createWebAuthnDevice(); + await registerPasskey(harness, account.token, target, {password: account.password}, 'New', TARGET_ORIGIN); + const started = await startLogin(); + await redeemLogin(started.ceremonyId, started.nonce.nonce, 'A'.repeat(43)) + .expect(HTTP_STATUS.NOT_FOUND, APIErrorCodes.UNKNOWN_PASSKEY_BRIDGE) + .execute(); + const options = await fetchOptions(started.ceremonyId); + await createBuilderWithoutAuth(harness) + .post(`/auth/passkey-bridge/${started.ceremonyId}/complete`) + .header('origin', LEGACY_ORIGIN) + .body({response: createAuthenticationResponse(target, options)}) + .expect(HTTP_STATUS.UNAUTHORIZED, APIErrorCodes.PASSKEY_AUTHENTICATION_FAILED) + .execute(); + const code = completionCodeFrom(await complete(started.ceremonyId, device), started.ceremonyId); + const redeemed = await redeemLogin(started.ceremonyId, started.nonce.nonce, code).execute(); + expect(redeemed.status).toBe('completed'); + }); + + it('never lets a bridge challenge through the normal endpoints', async () => { + const {device} = await createLegacyAccount(); + const started = await startLogin(); + const options = await fetchOptions(started.ceremonyId); + await createBuilderWithoutAuth(harness) + .post('/auth/webauthn/authenticate') + .header('origin', LEGACY_ORIGIN) + .body({response: createAuthenticationResponse(device, options), challenge: options.challenge}) + .expect(HTTP_STATUS.UNAUTHORIZED, APIErrorCodes.PASSKEY_AUTHENTICATION_FAILED) + .execute(); + }); + + it('reports a cancelled ceremony and refuses to cancel a completed one', async () => { + const {device} = await createLegacyAccount(); + const started = await startLogin(); + const cancelled = await createBuilderWithoutAuth(harness) + .post(`/auth/passkey-bridge/${started.ceremonyId}/cancel`) + .header('origin', LEGACY_ORIGIN) + .execute(); + const code = completionCodeFrom(cancelled, started.ceremonyId); + expect(await redeemLogin(started.ceremonyId, started.nonce.nonce, code).execute()).toEqual({status: 'cancelled'}); + + const second = await startLogin(); + await complete(second.ceremonyId, device); + await createBuilderWithoutAuth(harness) + .post(`/auth/passkey-bridge/${second.ceremonyId}/cancel`) + .header('origin', LEGACY_ORIGIN) + .expect(HTTP_STATUS.NOT_FOUND, APIErrorCodes.UNKNOWN_PASSKEY_BRIDGE) + .execute(); + }); + + it('completes two-factor sign in for the ticket holder', async () => { + const account = await createTestAccount(harness); + const device = createWebAuthnDevice(); + const secret = createTotpSecret(); + await createBuilder(harness, account.token) + .post('/users/@me/mfa/totp/enable') + .body({secret, code: generateTotpCode(secret), password: account.password}) + .execute(); + await registerPasskey( + harness, + account.token, + device, + {mfa_method: 'totp', mfa_code: generateTotpCode(secret)}, + 'Old', + ); + await setWebAuthnTwoFactor(harness, account.token, true, {mfa_method: 'totp', mfa_code: generateTotpCode(secret)}); + const login = (await loginUser(harness, {email: account.email, password: account.password})) as LoginMfaResponse; + const started = await startLogin({purpose: 'login_mfa', ticket: login.ticket}); + const options = await fetchOptions(started.ceremonyId); + expect(options.allowCredentials?.map((cred) => cred.id)).toEqual([device.credentialId.toString('base64url')]); + expect(options.userVerification).toBe('discouraged'); + const code = completionCodeFrom(await complete(started.ceremonyId, device), started.ceremonyId); + const redeemed = await redeemLogin(started.ceremonyId, started.nonce.nonce, code).execute(); + expect(redeemed.status).toBe('completed'); + await createBuilderWithoutAuth(harness) + .post('/auth/login/mfa/totp') + .body({code: generateTotpCode(secret), ticket: login.ticket}) + .expect(HTTP_STATUS.BAD_REQUEST) + .execute(); + }); + + it('issues a sudo token that passes a sudo-protected route', async () => { + const {account, device} = await createLegacyAccount(); + const credentialId = device.credentialId.toString('base64url'); + await createBuilder(harness, account.token) + .patch(`/users/@me/mfa/webauthn/credentials/${credentialId}`) + .body({name: 'Renamed'}) + .expect(HTTP_STATUS.FORBIDDEN) + .execute(); + const redeemed = await runNativeSudoBridge(harness, account.token, device); + expect(redeemed.status).toBe('completed'); + if (redeemed.status !== 'completed') return; + await createBuilder(harness, account.token) + .patch(`/users/@me/mfa/webauthn/credentials/${credentialId}`) + .header(SUDO_MODE_HEADER, redeemed.sudo_token) + .body({name: 'Renamed'}) + .expect(HTTP_STATUS.NO_CONTENT) + .execute(); + }); + + it('returns sudo page ceremonies to the bridge page on the new origin', async () => { + const {account, device} = await createLegacyAccount(); + const started = await startSudo(account.token); + const finish = await complete(started.ceremonyId, device); + const returnUrl = new URL(finish.return_url!); + expect(`${returnUrl.origin}${returnUrl.pathname}`).toBe(`${TARGET_ORIGIN}/passkey-bridge`); + const code = completionCodeFrom(finish, started.ceremonyId); + const redeemed = await createBuilder(harness, account.token) + .post(`/users/@me/passkey-bridge/${started.ceremonyId}/redeem`) + .header('origin', TARGET_ORIGIN) + .body({nonce: started.nonce.nonce, completion_code: code}) + .execute(); + expect(redeemed.status).toBe('completed'); + }); + + it('does not consume a ceremony redeemed on the wrong route or by another user', async () => { + const {account, device} = await createLegacyAccount(); + const other = await createTestAccount(harness); + const started = await startSudo(account.token, 'native'); + const options = await fetchOptions(started.ceremonyId, TARGET_ORIGIN); + const finish = await createBuilderWithoutAuth(harness) + .post(`/auth/passkey-bridge/${started.ceremonyId}/complete`) + .header('origin', TARGET_ORIGIN) + .body({response: createAuthenticationResponse(device, options)}) + .execute(); + const body = {nonce: started.nonce.nonce, completion_code: finish.completion_code}; + await redeemLogin(started.ceremonyId, body.nonce, body.completion_code!) + .expect(HTTP_STATUS.NOT_FOUND, APIErrorCodes.UNKNOWN_PASSKEY_BRIDGE) + .execute(); + await createBuilder(harness, other.token) + .post(`/users/@me/passkey-bridge/${started.ceremonyId}/redeem`) + .header('origin', TARGET_ORIGIN) + .body(body) + .expect(HTTP_STATUS.NOT_FOUND, APIErrorCodes.UNKNOWN_PASSKEY_BRIDGE) + .execute(); + const redeemed = await createBuilder(harness, account.token) + .post(`/users/@me/passkey-bridge/${started.ceremonyId}/redeem`) + .header('origin', TARGET_ORIGIN) + .body(body) + .execute(); + expect(redeemed.status).toBe('completed'); + }); + + it('always stores the ceremony with an expiry', async () => { + const {device} = await createLegacyAccount(); + const started = await startLogin(); + const key = `passkey_bridge:${createHash('sha256').update(started.ceremonyId).digest('hex')}`; + const cache = getCacheService(); + const ttls = [await cache.ttl(key)]; + await fetchOptions(started.ceremonyId); + ttls.push(await cache.ttl(key)); + await complete(started.ceremonyId, device); + ttls.push(await cache.ttl(key)); + for (const ttl of ttls) { + expect(ttl).toBeGreaterThan(0); + expect(ttl).toBeLessThanOrEqual(600); + } + }); +}); diff --git a/fluxer_api/src/api/auth/tests/PasskeyMigration.test.ts b/fluxer_api/src/api/auth/tests/PasskeyMigration.test.ts new file mode 100644 index 000000000..a7030975e --- /dev/null +++ b/fluxer_api/src/api/auth/tests/PasskeyMigration.test.ts @@ -0,0 +1,260 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {createAuthHarness, createTestAccount, type TestAccount} from '@app/api/auth/tests/AuthTestUtils'; +import { + LEGACY_RP_ID, + listPasskeys, + registerPasskey, + runNativeSudoBridge, + setDomainMigration, + TARGET_ORIGIN, + TARGET_RP_ID, +} from '@app/api/auth/tests/PasskeyTestUtils'; +import { + createAuthenticationResponse, + createRegistrationResponse, + createWebAuthnDevice, + type WebAuthnAuthenticationOptions, + type WebAuthnDevice, + type WebAuthnRegistrationOptions, +} from '@app/api/auth/tests/WebAuthnTestUtils'; +import {createUserID} from '@app/api/BrandedTypes'; +import {getUserRepository} from '@app/api/middleware/ServiceSingletons'; +import type {ApiTestHarness} from '@app/api/test/ApiTestHarness'; +import {HTTP_STATUS} from '@app/api/test/TestConstants'; +import {createBuilder, createBuilderWithoutAuth} from '@app/api/test/TestRequestBuilder'; +import {APIErrorCodes} from '@fluxer/constants/src/ApiErrorCodes'; +import type {PasskeyMigrationResponse} from '@fluxer/schema/src/domains/auth/PasskeyMigrationSchemas'; +import {afterAll, beforeAll, beforeEach, describe, expect, it} from 'vitest'; + +const MIGRATION_PATH = '/users/@me/mfa/webauthn/migration'; +const MIGRATION_OPTIONS_PATH = '/users/@me/mfa/webauthn/migration/registration-options'; + +function credentialIdOf(device: WebAuthnDevice): string { + return device.credentialId.toString('base64url'); +} + +interface RpcSessionResponse { + data: {webauthn_credentials: Array<{id: string; rp_id: string}>}; +} + +describe('Passkey migration', () => { + let harness: ApiTestHarness; + + beforeAll(async () => { + harness = await createAuthHarness(); + }); + + beforeEach(async () => { + await harness.reset(); + }); + + afterAll(async () => { + await harness?.shutdown(); + }); + + async function createAssignedAccount(): Promise<{account: TestAccount; legacy: WebAuthnDevice}> { + const account = await createTestAccount(harness); + const legacy = createWebAuthnDevice(); + await registerPasskey(harness, account.token, legacy, {password: account.password}, 'Laptop'); + await setDomainMigration(true, [account.userId]); + return {account, legacy}; + } + + async function getPending(token: string): Promise { + const response = await createBuilder(harness, token).get(MIGRATION_PATH).execute(); + return response.pending; + } + + async function migrationOptions(token: string): Promise { + return createBuilder(harness, token) + .post(MIGRATION_OPTIONS_PATH) + .header('origin', TARGET_ORIGIN) + .execute(); + } + + function completeMigration(token: string, device: WebAuthnDevice, options: WebAuthnRegistrationOptions) { + return createBuilder(harness, token) + .post(MIGRATION_PATH) + .header('origin', TARGET_ORIGIN) + .body({response: createRegistrationResponse(device, options, 'Laptop'), challenge: options.challenge}); + } + + async function migrate(account: TestAccount, legacy: WebAuthnDevice): Promise { + await runNativeSudoBridge(harness, account.token, legacy); + const target = createWebAuthnDevice(); + await completeMigration(account.token, target, await migrationOptions(account.token)) + .expect(HTTP_STATUS.NO_CONTENT) + .execute(); + return target; + } + + async function discoverableLogin(device: WebAuthnDevice, origin?: string, status: number = HTTP_STATUS.OK) { + const optionsBuilder = createBuilderWithoutAuth(harness) + .post('/auth/webauthn/authentication-options') + .body(null); + if (origin) optionsBuilder.header('origin', origin); + const options = await optionsBuilder.execute(); + const builder = createBuilderWithoutAuth(harness) + .post('/auth/webauthn/authenticate') + .body({response: createAuthenticationResponse(device, options), challenge: options.challenge}) + .expect(status); + if (origin) builder.header('origin', origin); + await builder.execute(); + } + + it('records a pending update for any account on the new origin while the switch is on', async () => { + const unassigned = await createTestAccount(harness); + const unassignedDevice = createWebAuthnDevice(); + await registerPasskey(harness, unassigned.token, unassignedDevice, {password: unassigned.password}, 'Laptop'); + await setDomainMigration(false); + expect((await runNativeSudoBridge(harness, unassigned.token, unassignedDevice)).status).toBe('completed'); + expect(await getPending(unassigned.token)).toBeNull(); + + await setDomainMigration(true); + expect((await runNativeSudoBridge(harness, unassigned.token, unassignedDevice)).status).toBe('completed'); + expect(await getPending(unassigned.token)).toEqual({ + credential_id: credentialIdOf(unassignedDevice), + name: 'Laptop', + cross_device: false, + }); + }); + + it('needs a pending update and the new origin for registration options', async () => { + const {account, legacy} = await createAssignedAccount(); + await createBuilder(harness, account.token) + .post(MIGRATION_OPTIONS_PATH) + .header('origin', TARGET_ORIGIN) + .expect(HTTP_STATUS.NOT_FOUND, APIErrorCodes.UNKNOWN_PASSKEY_MIGRATION) + .execute(); + await runNativeSudoBridge(harness, account.token, legacy); + await createBuilder(harness, account.token) + .post(MIGRATION_OPTIONS_PATH) + .expect(HTTP_STATUS.NOT_FOUND, APIErrorCodes.UNKNOWN_PASSKEY_MIGRATION) + .execute(); + const options = await migrationOptions(account.token); + expect(options.rp.id).toBe(TARGET_RP_ID); + }); + + it('replaces the passkey under the same name and hides the old one', async () => { + const {account, legacy} = await createAssignedAccount(); + const target = await migrate(account, legacy); + const credentials = await listPasskeys(harness, account.token); + expect(credentials).toEqual([ + expect.objectContaining({id: credentialIdOf(target), name: 'Laptop', rp_id: TARGET_RP_ID}), + ]); + const old = await getUserRepository().getWebAuthnCredential( + createUserID(BigInt(account.userId)), + credentialIdOf(legacy), + ); + expect(old?.supersededBy).toBe(credentialIdOf(target)); + expect(await getPending(account.token)).toBeNull(); + const ready = await createBuilder(harness, '') + .post('/test/rpc-session-init') + .body({type: 'session', token: account.token, version: 1, ip: '127.0.0.1'}) + .execute(); + expect(ready.data.webauthn_credentials.map(({id, rp_id}) => ({id, rp_id}))).toEqual([ + {id: credentialIdOf(target), rp_id: TARGET_RP_ID}, + ]); + }); + + it('keeps the old passkey working off the new origin', async () => { + const {account, legacy} = await createAssignedAccount(); + const target = await migrate(account, legacy); + await discoverableLogin(legacy); + await discoverableLogin(legacy, TARGET_ORIGIN, HTTP_STATUS.UNAUTHORIZED); + await discoverableLogin(target, TARGET_ORIGIN); + await createBuilder(harness, account.token) + .patch(`/users/@me/mfa/webauthn/credentials/${credentialIdOf(legacy)}`) + .body({name: 'Renamed', password: account.password}) + .expect(HTTP_STATUS.NOT_FOUND, APIErrorCodes.UNKNOWN_WEBAUTHN_CREDENTIAL) + .execute(); + const sudoOptions = await createBuilder(harness, account.token) + .post('/users/@me/sudo/webauthn/authentication-options') + .body(null) + .execute(); + expect(sudoOptions.rpId).toBe(LEGACY_RP_ID); + expect(sudoOptions.allowCredentials?.map((cred) => cred.id)).toEqual([credentialIdOf(legacy)]); + }); + + it('removes the old passkey together with its replacement', async () => { + const {account, legacy} = await createAssignedAccount(); + const target = await migrate(account, legacy); + await createBuilder(harness, account.token) + .delete(`/users/@me/mfa/webauthn/credentials/${credentialIdOf(target)}`) + .body({password: account.password}) + .expect(HTTP_STATUS.NO_CONTENT) + .execute(); + expect(await getUserRepository().listWebAuthnCredentials(createUserID(BigInt(account.userId)))).toEqual([]); + await discoverableLogin(legacy, undefined, HTTP_STATUS.UNAUTHORIZED); + }); + + it('removes every remaining superseded passkey with the last visible one', async () => { + const account = await createTestAccount(harness); + const orphan = createWebAuthnDevice(); + const visible = createWebAuthnDevice(); + await registerPasskey(harness, account.token, orphan, {password: account.password}, 'Orphan'); + await registerPasskey(harness, account.token, visible, {password: account.password}, 'Visible'); + const userId = createUserID(BigInt(account.userId)); + await getUserRepository().setWebAuthnCredentialSupersededBy(userId, credentialIdOf(orphan), 'gone'); + await createBuilder(harness, account.token) + .delete(`/users/@me/mfa/webauthn/credentials/${credentialIdOf(visible)}`) + .body({password: account.password}) + .expect(HTTP_STATUS.NO_CONTENT) + .execute(); + expect(await getUserRepository().listWebAuthnCredentials(userId)).toEqual([]); + }); + + it('has no way to attach the old passkey to another one', async () => { + const {account, legacy} = await createAssignedAccount(); + await runNativeSudoBridge(harness, account.token, legacy); + const target = createWebAuthnDevice(); + await registerPasskey(harness, account.token, target, {password: account.password}, 'Phone', TARGET_ORIGIN); + await createBuilder(harness, account.token) + .delete(MIGRATION_PATH) + .header('origin', TARGET_ORIGIN) + .expect(HTTP_STATUS.NOT_FOUND) + .execute(); + expect((await listPasskeys(harness, account.token)).map((cred) => cred.id).sort()).toEqual( + [credentialIdOf(legacy), credentialIdOf(target)].sort(), + ); + }); + + it('never lets a migration challenge through the normal registration route', async () => { + const {account, legacy} = await createAssignedAccount(); + await runNativeSudoBridge(harness, account.token, legacy); + const options = await migrationOptions(account.token); + await createBuilder(harness, account.token) + .post('/users/@me/mfa/webauthn/credentials') + .header('origin', TARGET_ORIGIN) + .body({ + response: createRegistrationResponse(createWebAuthnDevice(), options, 'Sneaky'), + challenge: options.challenge, + name: 'Sneaky', + }) + .expect(HTTP_STATUS.BAD_REQUEST, APIErrorCodes.INVALID_WEBAUTHN_CREDENTIAL) + .execute(); + }); + + it('creates one credential when two updates race', async () => { + const {account, legacy} = await createAssignedAccount(); + await runNativeSudoBridge(harness, account.token, legacy); + const first = await migrationOptions(account.token); + const second = await migrationOptions(account.token); + const results = await Promise.all( + [first, second].map((options) => + completeMigration(account.token, createWebAuthnDevice(), options) + .expect(HTTP_STATUS.NO_CONTENT) + .executeWithResponse() + .then( + () => 'ok', + () => 'failed', + ), + ), + ); + expect(results.sort()).toEqual(['failed', 'ok']); + const credentials = await listPasskeys(harness, account.token); + expect(credentials).toHaveLength(1); + expect(credentials[0].rp_id).toBe(TARGET_RP_ID); + }); +}); diff --git a/fluxer_api/src/api/auth/tests/PasskeyRelyingParty.test.ts b/fluxer_api/src/api/auth/tests/PasskeyRelyingParty.test.ts new file mode 100644 index 000000000..87f4903a3 --- /dev/null +++ b/fluxer_api/src/api/auth/tests/PasskeyRelyingParty.test.ts @@ -0,0 +1,232 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {createAuthHarness, createTestAccount, type TestAccount} from '@app/api/auth/tests/AuthTestUtils'; +import { + LEGACY_ORIGIN, + LEGACY_RP_ID, + listPasskeys, + registerPasskey, + TARGET_ORIGIN, + TARGET_RP_ID, +} from '@app/api/auth/tests/PasskeyTestUtils'; +import { + createAuthenticationResponse, + createWebAuthnDevice, + type WebAuthnAuthenticationOptions, + type WebAuthnDevice, + type WebAuthnRegistrationOptions, +} from '@app/api/auth/tests/WebAuthnTestUtils'; +import {createUserID} from '@app/api/BrandedTypes'; +import {getConfig} from '@app/api/Config'; +import {getUserRepository} from '@app/api/middleware/ServiceSingletons'; +import type {ApiTestHarness} from '@app/api/test/ApiTestHarness'; +import {HTTP_STATUS} from '@app/api/test/TestConstants'; +import {createBuilder, createBuilderWithoutAuth} from '@app/api/test/TestRequestBuilder'; +import {APIErrorCodes} from '@fluxer/constants/src/ApiErrorCodes'; +import {afterAll, afterEach, beforeAll, beforeEach, describe, expect, it} from 'vitest'; + +function credentialIdOf(device: WebAuthnDevice): string { + return device.credentialId.toString('base64url'); +} + +describe('Passkey relying party selection', () => { + let harness: ApiTestHarness; + + beforeAll(async () => { + harness = await createAuthHarness(); + }); + + beforeEach(async () => { + await harness.reset(); + }); + + afterEach(() => { + getConfig().instance.selfHosted = false; + }); + + afterAll(async () => { + await harness?.shutdown(); + }); + + async function registrationRpId(account: TestAccount, origin?: string): Promise { + const builder = createBuilder(harness, account.token) + .post('/users/@me/mfa/webauthn/credentials/registration-options') + .body({password: account.password}); + if (origin) builder.header('origin', origin); + return (await builder.execute()).rp.id; + } + + async function discoverableOptions(origin?: string): Promise { + const builder = createBuilderWithoutAuth(harness) + .post('/auth/webauthn/authentication-options') + .body(null); + if (origin) builder.header('origin', origin); + return builder.execute(); + } + + async function sudoOptions(token: string, origin?: string): Promise { + const builder = createBuilder(harness, token) + .post('/users/@me/sudo/webauthn/authentication-options') + .body(null); + if (origin) builder.header('origin', origin); + return builder.execute(); + } + + async function createMixedAccount(): Promise<{account: TestAccount; legacy: WebAuthnDevice; target: WebAuthnDevice}> { + const account = await createTestAccount(harness); + const legacy = createWebAuthnDevice(); + const target = createWebAuthnDevice(); + await registerPasskey(harness, account.token, legacy, {password: account.password}, 'Old'); + await registerPasskey(harness, account.token, target, {password: account.password}, 'New', TARGET_ORIGIN); + return {account, legacy, target}; + } + + it('uses the new relying party only for requests from the new origin', async () => { + const account = await createTestAccount(harness); + expect(await registrationRpId(account)).toBe(LEGACY_RP_ID); + expect(await registrationRpId(account, LEGACY_ORIGIN)).toBe(LEGACY_RP_ID); + expect(await registrationRpId(account, TARGET_ORIGIN)).toBe(TARGET_RP_ID); + expect((await discoverableOptions()).rpId).toBe(LEGACY_RP_ID); + expect((await discoverableOptions(LEGACY_ORIGIN)).rpId).toBe(LEGACY_RP_ID); + expect((await discoverableOptions(TARGET_ORIGIN)).rpId).toBe(TARGET_RP_ID); + }); + + it('keeps the legacy relying party everywhere on a self-hosted instance', async () => { + getConfig().instance.selfHosted = true; + const account = await createTestAccount(harness); + expect(await registrationRpId(account, TARGET_ORIGIN)).toBe(LEGACY_RP_ID); + expect((await discoverableOptions(TARGET_ORIGIN)).rpId).toBe(LEGACY_RP_ID); + }); + + it('stores and exposes the relying party of each passkey', async () => { + const {account, legacy, target} = await createMixedAccount(); + const credentials = await listPasskeys(harness, account.token); + expect(credentials.map(({id, rp_id}) => ({id, rp_id}))).toEqual( + expect.arrayContaining([ + {id: credentialIdOf(legacy), rp_id: LEGACY_RP_ID}, + {id: credentialIdOf(target), rp_id: TARGET_RP_ID}, + ]), + ); + const legacyRow = await getUserRepository().getWebAuthnCredential( + createUserID(BigInt(account.userId)), + credentialIdOf(legacy), + ); + expect(legacyRow?.rpId).toBeNull(); + }); + + it('keeps the legacy options unchanged for a legacy-only account off the new origin', async () => { + const account = await createTestAccount(harness); + const device = createWebAuthnDevice(); + await registerPasskey(harness, account.token, device, {password: account.password}, 'Old'); + for (const origin of [undefined, LEGACY_ORIGIN]) { + const options = await sudoOptions(account.token, origin); + expect(options.rpId).toBe(LEGACY_RP_ID); + expect(options.allowCredentials?.map((cred) => cred.id)).toEqual([credentialIdOf(device)]); + expect(options.userVerification).toBe('discouraged'); + } + }); + + it('offers one relying party group per request', async () => { + const {account, legacy, target} = await createMixedAccount(); + const onTarget = await sudoOptions(account.token, TARGET_ORIGIN); + expect(onTarget.rpId).toBe(TARGET_RP_ID); + expect(onTarget.allowCredentials?.map((cred) => cred.id)).toEqual([credentialIdOf(target)]); + const offTarget = await sudoOptions(account.token); + expect(offTarget.rpId).toBe(LEGACY_RP_ID); + expect(offTarget.allowCredentials?.map((cred) => cred.id)).toEqual([credentialIdOf(legacy)]); + }); + + it('falls back to the other group when the preferred one is empty', async () => { + const legacyOnly = await createTestAccount(harness); + const legacy = createWebAuthnDevice(); + await registerPasskey(harness, legacyOnly.token, legacy, {password: legacyOnly.password}, 'Old'); + expect((await sudoOptions(legacyOnly.token, TARGET_ORIGIN)).rpId).toBe(LEGACY_RP_ID); + const targetOnly = await createTestAccount(harness); + const target = createWebAuthnDevice(); + await registerPasskey(harness, targetOnly.token, target, {password: targetOnly.password}, 'New', TARGET_ORIGIN); + expect((await sudoOptions(targetOnly.token)).rpId).toBe(TARGET_RP_ID); + }); + + it('rejects a passkey from another relying party before the test mode shortcut', async () => { + const {legacy} = await createMixedAccount(); + const options = await discoverableOptions(TARGET_ORIGIN); + await createBuilderWithoutAuth(harness) + .post('/auth/webauthn/authenticate') + .header('origin', TARGET_ORIGIN) + .body({response: createAuthenticationResponse(legacy, options), challenge: options.challenge}) + .expect(HTTP_STATUS.UNAUTHORIZED, APIErrorCodes.PASSKEY_AUTHENTICATION_FAILED) + .execute(); + }); + + it('rejects a passkey outside the offered list before the test mode shortcut', async () => { + const account = await createTestAccount(harness); + const visible = createWebAuthnDevice(); + const superseded = createWebAuthnDevice(); + await registerPasskey(harness, account.token, visible, {password: account.password}, 'Visible'); + await registerPasskey(harness, account.token, superseded, {password: account.password}, 'Superseded'); + await getUserRepository().setWebAuthnCredentialSupersededBy( + createUserID(BigInt(account.userId)), + credentialIdOf(superseded), + credentialIdOf(visible), + ); + const options = await sudoOptions(account.token, TARGET_ORIGIN); + expect(options.rpId).toBe(LEGACY_RP_ID); + expect(options.allowCredentials?.map((cred) => cred.id)).toEqual([credentialIdOf(visible)]); + await createBuilder(harness, account.token) + .patch(`/users/@me/mfa/webauthn/credentials/${credentialIdOf(visible)}`) + .header('origin', TARGET_ORIGIN) + .body({ + name: 'Renamed', + mfa_method: 'webauthn', + webauthn_response: createAuthenticationResponse(superseded, options), + webauthn_challenge: options.challenge, + }) + .expect(HTTP_STATUS.BAD_REQUEST) + .execute(); + const retry = await sudoOptions(account.token, TARGET_ORIGIN); + await createBuilder(harness, account.token) + .patch(`/users/@me/mfa/webauthn/credentials/${credentialIdOf(visible)}`) + .header('origin', TARGET_ORIGIN) + .body({ + name: 'Renamed', + mfa_method: 'webauthn', + webauthn_response: createAuthenticationResponse(visible, retry), + webauthn_challenge: retry.challenge, + }) + .expect(HTTP_STATUS.NO_CONTENT) + .execute(); + }); + + it('accepts a superseded passkey only off the new origin', async () => { + const account = await createTestAccount(harness); + const legacy = createWebAuthnDevice(); + const target = createWebAuthnDevice(); + await registerPasskey(harness, account.token, legacy, {password: account.password}, 'Old'); + await registerPasskey(harness, account.token, target, {password: account.password}, 'New', TARGET_ORIGIN); + await getUserRepository().setWebAuthnCredentialSupersededBy( + createUserID(BigInt(account.userId)), + credentialIdOf(legacy), + credentialIdOf(target), + ); + expect((await listPasskeys(harness, account.token)).map((cred) => cred.id)).toEqual([credentialIdOf(target)]); + + const offTarget = await discoverableOptions(); + await createBuilderWithoutAuth(harness) + .post('/auth/webauthn/authenticate') + .body({response: createAuthenticationResponse(legacy, offTarget), challenge: offTarget.challenge}) + .expect(HTTP_STATUS.OK) + .execute(); + const sudoOffTarget = await sudoOptions(account.token); + expect(sudoOffTarget.allowCredentials?.map((cred) => cred.id)).toEqual([credentialIdOf(legacy)]); + + const onTarget = await discoverableOptions(TARGET_ORIGIN); + await createBuilderWithoutAuth(harness) + .post('/auth/webauthn/authenticate') + .header('origin', TARGET_ORIGIN) + .body({response: createAuthenticationResponse(legacy, onTarget), challenge: onTarget.challenge}) + .expect(HTTP_STATUS.UNAUTHORIZED, APIErrorCodes.PASSKEY_AUTHENTICATION_FAILED) + .execute(); + const sudoOnTarget = await sudoOptions(account.token, TARGET_ORIGIN); + expect(sudoOnTarget.allowCredentials?.map((cred) => cred.id)).toEqual([credentialIdOf(target)]); + }); +}); diff --git a/fluxer_api/src/api/auth/tests/PasskeyTestUtils.ts b/fluxer_api/src/api/auth/tests/PasskeyTestUtils.ts new file mode 100644 index 000000000..6ae99271d --- /dev/null +++ b/fluxer_api/src/api/auth/tests/PasskeyTestUtils.ts @@ -0,0 +1,102 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {createHash, randomBytes} from 'node:crypto'; +import { + createAuthenticationResponse, + createRegistrationResponse, + type WebAuthnAuthenticationOptions, + type WebAuthnDevice, + type WebAuthnRegistrationOptions, +} from '@app/api/auth/tests/WebAuthnTestUtils'; +import {getInstanceConfigRepository} from '@app/api/middleware/ServiceSingletons'; +import type {ApiTestHarness} from '@app/api/test/ApiTestHarness'; +import {createBuilder, createBuilderWithoutAuth} from '@app/api/test/TestRequestBuilder'; +import {DEFAULT_DOMAIN_MIGRATION_CONFIG} from '@fluxer/schema/src/domains/admin/DomainMigrationSchemas'; +import type { + PasskeyBridgeFinishResponse, + PasskeyBridgeStartResponse, + PasskeyBridgeSudoRedeemResponse, +} from '@fluxer/schema/src/domains/auth/PasskeyBridgeSchemas'; + +export const TARGET_ORIGIN = 'https://fluxer.com'; +export const LEGACY_ORIGIN = 'https://web.fluxer.app'; +export const LEGACY_RP_ID = 'localhost'; +export const TARGET_RP_ID = 'fluxer.com'; + +export interface PasskeyCredentialListItem { + id: string; + name: string; + rp_id: string; +} + +export interface BridgeNonce { + nonce: string; + nonceHash: string; +} + +export function createBridgeNonce(): BridgeNonce { + const nonce = randomBytes(32).toString('base64url'); + return {nonce, nonceHash: createHash('sha256').update(nonce).digest('hex')}; +} + +export async function setDomainMigration(enabled: boolean, includedUserIds: Array = []): Promise { + await getInstanceConfigRepository().setDomainMigrationConfig({ + ...DEFAULT_DOMAIN_MIGRATION_CONFIG, + enabled, + included_user_ids: includedUserIds, + }); +} + +export async function registerPasskey( + harness: ApiTestHarness, + token: string, + device: WebAuthnDevice, + sudo: Record, + name: string, + origin?: string, +): Promise { + const optionsBuilder = createBuilder(harness, token) + .post('/users/@me/mfa/webauthn/credentials/registration-options') + .body(sudo); + if (origin) optionsBuilder.header('origin', origin); + const options = await optionsBuilder.execute(); + const registerBuilder = createBuilder(harness, token) + .post('/users/@me/mfa/webauthn/credentials') + .body({response: createRegistrationResponse(device, options, name), challenge: options.challenge, name}) + .expect(204); + if (origin) registerBuilder.header('origin', origin); + await registerBuilder.execute(); +} + +export async function listPasskeys(harness: ApiTestHarness, token: string): Promise> { + return createBuilder>(harness, token) + .get('/users/@me/mfa/webauthn/credentials') + .execute(); +} + +export async function runNativeSudoBridge( + harness: ApiTestHarness, + token: string, + device: WebAuthnDevice, + nonce: BridgeNonce = createBridgeNonce(), +): Promise { + const start = await createBuilder(harness, token) + .post('/users/@me/passkey-bridge') + .header('origin', TARGET_ORIGIN) + .body({runner: 'native', nonce_hash: nonce.nonceHash}) + .execute(); + const {options} = await createBuilderWithoutAuth<{options: WebAuthnAuthenticationOptions}>(harness) + .post(`/auth/passkey-bridge/${start.ceremony_id}/options`) + .header('origin', TARGET_ORIGIN) + .execute(); + const finish = await createBuilderWithoutAuth(harness) + .post(`/auth/passkey-bridge/${start.ceremony_id}/complete`) + .header('origin', TARGET_ORIGIN) + .body({response: createAuthenticationResponse(device, options)}) + .execute(); + return createBuilder(harness, token) + .post(`/users/@me/passkey-bridge/${start.ceremony_id}/redeem`) + .header('origin', TARGET_ORIGIN) + .body({nonce: nonce.nonce, completion_code: finish.completion_code}) + .execute(); +} diff --git a/fluxer_api/src/api/database/types/AuthTypes.ts b/fluxer_api/src/api/database/types/AuthTypes.ts index d8f212e7c..f0ef533ea 100644 --- a/fluxer_api/src/api/database/types/AuthTypes.ts +++ b/fluxer_api/src/api/database/types/AuthTypes.ts @@ -100,6 +100,8 @@ export interface WebAuthnCredentialRow { created_at: Date; last_used_at: Nullish; version: number; + rp_id: Nullish; + superseded_by: Nullish; } export interface EmailChangeTicketRow { @@ -193,6 +195,8 @@ export const WEBAUTHN_CREDENTIAL_COLUMNS = [ 'created_at', 'last_used_at', 'version', + 'rp_id', + 'superseded_by', ] as const satisfies ReadonlyArray; export interface PhoneTokenRow { diff --git a/fluxer_api/src/api/models/WebAuthnCredential.ts b/fluxer_api/src/api/models/WebAuthnCredential.ts index 123f34d1a..7faad0aaa 100644 --- a/fluxer_api/src/api/models/WebAuthnCredential.ts +++ b/fluxer_api/src/api/models/WebAuthnCredential.ts @@ -12,6 +12,8 @@ export class WebAuthnCredential { readonly createdAt: Date; readonly lastUsedAt: Date | null; readonly version: number; + readonly rpId: string | null; + readonly supersededBy: string | null; constructor(row: WebAuthnCredentialRow) { this.credentialId = row.credential_id; @@ -22,6 +24,8 @@ export class WebAuthnCredential { this.createdAt = row.created_at; this.lastUsedAt = row.last_used_at ?? null; this.version = row.version; + this.rpId = row.rp_id ?? null; + this.supersededBy = row.superseded_by ?? null; } toRow(userId: UserID): WebAuthnCredentialRow { @@ -35,6 +39,8 @@ export class WebAuthnCredential { created_at: this.createdAt, last_used_at: this.lastUsedAt, version: this.version, + rp_id: this.rpId, + superseded_by: this.supersededBy, }; } } diff --git a/fluxer_api/src/api/openapi/openapi.json b/fluxer_api/src/api/openapi/openapi.json index 1bbe60451..d4cd46179 100644 --- a/fluxer_api/src/api/openapi/openapi.json +++ b/fluxer_api/src/api/openapi/openapi.json @@ -1053,6 +1053,292 @@ } } }, + "/auth/passkey-bridge": { + "post": { + "operationId": "start_passkey_bridge_login", + "summary": "Start passkey bridge sign in", + "tags": ["Auth"], + "responses": { + "200": { + "description": "Success", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeStartResponse"}}} + }, + "400": { + "description": "Bad Request - The request was malformed or contained invalid data", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "429": { + "description": "Too Many Requests - You are being rate limited", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}}, + "headers": { + "Retry-After": { + "description": "Number of seconds to wait before retrying (only on 429)", + "schema": {"type": "integer"} + }, + "X-RateLimit-Limit": { + "description": "The number of requests that can be made in the current window", + "schema": {"type": "integer"} + }, + "X-RateLimit-Remaining": { + "description": "The number of remaining requests that can be made", + "schema": {"type": "integer"} + }, + "X-RateLimit-Reset": { + "description": "Unix timestamp when the rate limit resets", + "schema": {"type": "integer"} + } + } + }, + "500": { + "description": "Internal Server Error - An unexpected error occurred", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + } + }, + "description": "Start a sign in or two-factor ceremony for a passkey that belongs to the paired first-party origin. Only available on the official instance from the new origin.", + "requestBody": { + "required": true, + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeLoginStartRequest"}}} + } + } + }, + "/auth/passkey-bridge/{ceremony_id}/cancel": { + "post": { + "operationId": "cancel_passkey_bridge", + "summary": "Cancel passkey bridge", + "tags": ["Auth"], + "responses": { + "200": { + "description": "Success", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeFinishResponse"}}} + }, + "400": { + "description": "Bad Request - The request was malformed or contained invalid data", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "429": { + "description": "Too Many Requests - You are being rate limited", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}}, + "headers": { + "Retry-After": { + "description": "Number of seconds to wait before retrying (only on 429)", + "schema": {"type": "integer"} + }, + "X-RateLimit-Limit": { + "description": "The number of requests that can be made in the current window", + "schema": {"type": "integer"} + }, + "X-RateLimit-Remaining": { + "description": "The number of remaining requests that can be made", + "schema": {"type": "integer"} + }, + "X-RateLimit-Reset": { + "description": "Unix timestamp when the rate limit resets", + "schema": {"type": "integer"} + } + } + }, + "500": { + "description": "Internal Server Error - An unexpected error occurred", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + } + }, + "description": "Cancel a passkey bridge ceremony that has not completed.", + "parameters": [ + { + "name": "ceremony_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "pattern": "^[A-Za-z0-9_-]{43}$", + "description": "Identifier of the passkey ceremony" + }, + "description": "Identifier of the passkey ceremony" + } + ] + } + }, + "/auth/passkey-bridge/{ceremony_id}/complete": { + "post": { + "operationId": "complete_passkey_bridge", + "summary": "Complete passkey bridge", + "tags": ["Auth"], + "responses": { + "200": { + "description": "Success", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeFinishResponse"}}} + }, + "400": { + "description": "Bad Request - The request was malformed or contained invalid data", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "429": { + "description": "Too Many Requests - You are being rate limited", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}}, + "headers": { + "Retry-After": { + "description": "Number of seconds to wait before retrying (only on 429)", + "schema": {"type": "integer"} + }, + "X-RateLimit-Limit": { + "description": "The number of requests that can be made in the current window", + "schema": {"type": "integer"} + }, + "X-RateLimit-Remaining": { + "description": "The number of remaining requests that can be made", + "schema": {"type": "integer"} + }, + "X-RateLimit-Reset": { + "description": "Unix timestamp when the rate limit resets", + "schema": {"type": "integer"} + } + } + }, + "500": { + "description": "Internal Server Error - An unexpected error occurred", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + } + }, + "description": "Verify the WebAuthn response for a pending passkey bridge ceremony. A failed verification leaves the ceremony pending so it can be retried.", + "parameters": [ + { + "name": "ceremony_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "pattern": "^[A-Za-z0-9_-]{43}$", + "description": "Identifier of the passkey ceremony" + }, + "description": "Identifier of the passkey ceremony" + } + ], + "requestBody": { + "required": true, + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeCompleteRequest"}}} + } + } + }, + "/auth/passkey-bridge/{ceremony_id}/options": { + "post": { + "operationId": "get_passkey_bridge_options", + "summary": "Get passkey bridge options", + "tags": ["Auth"], + "responses": { + "200": { + "description": "Success", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeOptionsResponse"}}} + }, + "400": { + "description": "Bad Request - The request was malformed or contained invalid data", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "429": { + "description": "Too Many Requests - You are being rate limited", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}}, + "headers": { + "Retry-After": { + "description": "Number of seconds to wait before retrying (only on 429)", + "schema": {"type": "integer"} + }, + "X-RateLimit-Limit": { + "description": "The number of requests that can be made in the current window", + "schema": {"type": "integer"} + }, + "X-RateLimit-Remaining": { + "description": "The number of remaining requests that can be made", + "schema": {"type": "integer"} + }, + "X-RateLimit-Reset": { + "description": "Unix timestamp when the rate limit resets", + "schema": {"type": "integer"} + } + } + }, + "500": { + "description": "Internal Server Error - An unexpected error occurred", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + } + }, + "description": "Issue WebAuthn authentication options for a pending passkey bridge ceremony. The request must come from the origin that runs the ceremony.", + "parameters": [ + { + "name": "ceremony_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "pattern": "^[A-Za-z0-9_-]{43}$", + "description": "Identifier of the passkey ceremony" + }, + "description": "Identifier of the passkey ceremony" + } + ] + } + }, + "/auth/passkey-bridge/{ceremony_id}/redeem": { + "post": { + "operationId": "redeem_passkey_bridge_login", + "summary": "Redeem passkey bridge sign in", + "tags": ["Auth"], + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeLoginRedeemResponse"}} + } + }, + "400": { + "description": "Bad Request - The request was malformed or contained invalid data", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "429": { + "description": "Too Many Requests - You are being rate limited", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}}, + "headers": { + "Retry-After": { + "description": "Number of seconds to wait before retrying (only on 429)", + "schema": {"type": "integer"} + }, + "X-RateLimit-Limit": { + "description": "The number of requests that can be made in the current window", + "schema": {"type": "integer"} + }, + "X-RateLimit-Remaining": { + "description": "The number of remaining requests that can be made", + "schema": {"type": "integer"} + }, + "X-RateLimit-Reset": { + "description": "Unix timestamp when the rate limit resets", + "schema": {"type": "integer"} + } + } + }, + "500": { + "description": "Internal Server Error - An unexpected error occurred", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + } + }, + "description": "Redeem a finished sign in or two-factor passkey bridge ceremony once. Requires the nonce kept by the starting page and the completion code handed back when the ceremony finished.", + "parameters": [ + { + "name": "ceremony_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "pattern": "^[A-Za-z0-9_-]{43}$", + "description": "Identifier of the passkey ceremony" + }, + "description": "Identifier of the passkey ceremony" + } + ], + "requestBody": { + "required": true, + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeRedeemRequest"}}} + } + } + }, "/auth/register": { "post": { "operationId": "register_account", @@ -17029,6 +17315,164 @@ } } }, + "/users/@me/mfa/webauthn/migration": { + "get": { + "operationId": "get_webauthn_migration", + "summary": "Get pending passkey update", + "tags": ["Users"], + "responses": { + "200": { + "description": "Success", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyMigrationResponse"}}} + }, + "400": { + "description": "Bad Request - The request was malformed or contained invalid data", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "401": { + "description": "Unauthorized - Authentication is required or the token is invalid", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "403": { + "description": "Forbidden - You do not have permission to perform this action", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "429": { + "description": "Too Many Requests - You are being rate limited", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}}, + "headers": { + "Retry-After": { + "description": "Number of seconds to wait before retrying (only on 429)", + "schema": {"type": "integer"} + }, + "X-RateLimit-Limit": { + "description": "The number of requests that can be made in the current window", + "schema": {"type": "integer"} + }, + "X-RateLimit-Remaining": { + "description": "The number of remaining requests that can be made", + "schema": {"type": "integer"} + }, + "X-RateLimit-Reset": { + "description": "Unix timestamp when the rate limit resets", + "schema": {"type": "integer"} + } + } + }, + "500": { + "description": "Internal Server Error - An unexpected error occurred", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + } + }, + "description": "Return the passkey this session can update to the new domain after using it within the last five minutes, or null.", + "security": [{"sessionToken": []}] + }, + "post": { + "operationId": "complete_webauthn_migration", + "summary": "Complete passkey update", + "tags": ["Users"], + "responses": { + "204": {"description": "No Content"}, + "400": { + "description": "Bad Request - The request was malformed or contained invalid data", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "401": { + "description": "Unauthorized - Authentication is required or the token is invalid", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "403": { + "description": "Forbidden - You do not have permission to perform this action", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "429": { + "description": "Too Many Requests - You are being rate limited", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}}, + "headers": { + "Retry-After": { + "description": "Number of seconds to wait before retrying (only on 429)", + "schema": {"type": "integer"} + }, + "X-RateLimit-Limit": { + "description": "The number of requests that can be made in the current window", + "schema": {"type": "integer"} + }, + "X-RateLimit-Remaining": { + "description": "The number of remaining requests that can be made", + "schema": {"type": "integer"} + }, + "X-RateLimit-Reset": { + "description": "Unix timestamp when the rate limit resets", + "schema": {"type": "integer"} + } + } + }, + "500": { + "description": "Internal Server Error - An unexpected error occurred", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + } + }, + "description": "Register the replacement passkey under the name of the pending one. The old passkey stops appearing in lists and is removed together with its replacement.", + "security": [{"sessionToken": []}], + "requestBody": { + "required": true, + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyMigrationCompleteRequest"}}} + } + } + }, + "/users/@me/mfa/webauthn/migration/registration-options": { + "post": { + "operationId": "get_webauthn_migration_registration_options", + "summary": "Get passkey update registration options", + "tags": ["Users"], + "responses": { + "200": { + "description": "Success", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/WebAuthnChallengeResponse"}}} + }, + "400": { + "description": "Bad Request - The request was malformed or contained invalid data", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "401": { + "description": "Unauthorized - Authentication is required or the token is invalid", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "403": { + "description": "Forbidden - You do not have permission to perform this action", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "429": { + "description": "Too Many Requests - You are being rate limited", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}}, + "headers": { + "Retry-After": { + "description": "Number of seconds to wait before retrying (only on 429)", + "schema": {"type": "integer"} + }, + "X-RateLimit-Limit": { + "description": "The number of requests that can be made in the current window", + "schema": {"type": "integer"} + }, + "X-RateLimit-Remaining": { + "description": "The number of remaining requests that can be made", + "schema": {"type": "integer"} + }, + "X-RateLimit-Reset": { + "description": "Unix timestamp when the rate limit resets", + "schema": {"type": "integer"} + } + } + }, + "500": { + "description": "Internal Server Error - An unexpected error occurred", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + } + }, + "description": "Generate registration options for the passkey that replaces the pending one. Requires a pending passkey update for this session.", + "security": [{"sessionToken": []}] + } + }, "/users/@me/mfa/webauthn/two-factor": { "put": { "operationId": "set_webauthn_two_factor", @@ -17489,6 +17933,135 @@ } } }, + "/users/@me/passkey-bridge": { + "post": { + "operationId": "start_passkey_bridge_sudo", + "summary": "Start passkey bridge sudo verification", + "tags": ["Users"], + "responses": { + "200": { + "description": "Success", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeStartResponse"}}} + }, + "400": { + "description": "Bad Request - The request was malformed or contained invalid data", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "401": { + "description": "Unauthorized - Authentication is required or the token is invalid", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "403": { + "description": "Forbidden - You do not have permission to perform this action", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "429": { + "description": "Too Many Requests - You are being rate limited", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}}, + "headers": { + "Retry-After": { + "description": "Number of seconds to wait before retrying (only on 429)", + "schema": {"type": "integer"} + }, + "X-RateLimit-Limit": { + "description": "The number of requests that can be made in the current window", + "schema": {"type": "integer"} + }, + "X-RateLimit-Remaining": { + "description": "The number of remaining requests that can be made", + "schema": {"type": "integer"} + }, + "X-RateLimit-Reset": { + "description": "Unix timestamp when the rate limit resets", + "schema": {"type": "integer"} + } + } + }, + "500": { + "description": "Internal Server Error - An unexpected error occurred", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + } + }, + "description": "Start a sudo verification ceremony for a passkey that belongs to the paired first-party origin. Only available on the official instance from the new origin.", + "security": [{"sessionToken": []}], + "requestBody": { + "required": true, + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeSudoStartRequest"}}} + } + } + }, + "/users/@me/passkey-bridge/{ceremony_id}/redeem": { + "post": { + "operationId": "redeem_passkey_bridge_sudo", + "summary": "Redeem passkey bridge sudo verification", + "tags": ["Users"], + "responses": { + "200": { + "description": "Success", + "content": { + "application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeSudoRedeemResponse"}} + } + }, + "400": { + "description": "Bad Request - The request was malformed or contained invalid data", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "401": { + "description": "Unauthorized - Authentication is required or the token is invalid", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "403": { + "description": "Forbidden - You do not have permission to perform this action", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + }, + "429": { + "description": "Too Many Requests - You are being rate limited", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/ThrottledError"}}}, + "headers": { + "Retry-After": { + "description": "Number of seconds to wait before retrying (only on 429)", + "schema": {"type": "integer"} + }, + "X-RateLimit-Limit": { + "description": "The number of requests that can be made in the current window", + "schema": {"type": "integer"} + }, + "X-RateLimit-Remaining": { + "description": "The number of remaining requests that can be made", + "schema": {"type": "integer"} + }, + "X-RateLimit-Reset": { + "description": "Unix timestamp when the rate limit resets", + "schema": {"type": "integer"} + } + } + }, + "500": { + "description": "Internal Server Error - An unexpected error occurred", + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/Error"}}} + } + }, + "description": "Redeem a finished sudo passkey bridge ceremony once for a sudo mode token. Requires the nonce kept by the starting page and the completion code handed back when the ceremony finished.", + "security": [{"sessionToken": []}], + "parameters": [ + { + "name": "ceremony_id", + "in": "path", + "required": true, + "schema": { + "type": "string", + "pattern": "^[A-Za-z0-9_-]{43}$", + "description": "Identifier of the passkey ceremony" + }, + "description": "Identifier of the passkey ceremony" + } + ], + "requestBody": { + "required": true, + "content": {"application/json": {"schema": {"$ref": "#/components/schemas/PasskeyBridgeRedeemRequest"}}} + } + } + }, "/users/@me/password-change/complete": { "post": { "operationId": "complete_password_change", @@ -22821,6 +23394,54 @@ "required": ["token", "auth_session_id_hash"], "additionalProperties": false }, + "PasskeyBridgeRedeemRequest": { + "type": "object", + "properties": { + "nonce": { + "type": "string", + "minLength": 16, + "maxLength": 256, + "pattern": "^[A-Za-z0-9_-]+$", + "description": "Nonce whose SHA-256 digest was sent when the ceremony started" + }, + "completion_code": { + "type": "string", + "pattern": "^[A-Za-z0-9_-]{43}$", + "description": "Code handed back when the ceremony finished" + } + }, + "required": ["nonce", "completion_code"] + }, + "PasskeyBridgeSudoRedeemResponse": { + "oneOf": [ + {"$ref": "#/components/schemas/CancelledPasskeyBridgeSudoRedeemResponse"}, + {"$ref": "#/components/schemas/CompletedPasskeyBridgeSudoRedeemResponse"} + ] + }, + "PasskeyBridgeSudoStartRequest": { + "type": "object", + "properties": { + "runner": {"$ref": "#/components/schemas/PasskeyBridgeRunner"}, + "nonce_hash": { + "type": "string", + "pattern": "^[0-9a-f]{64}$", + "description": "Lowercase hex SHA-256 digest of the nonce the starting page keeps" + } + }, + "required": ["runner", "nonce_hash"] + }, + "PasskeyBridgeStartResponse": { + "type": "object", + "properties": { + "ceremony_id": {"type": "string", "description": "Identifier of the passkey ceremony"}, + "bridge_url": { + "description": "Page that runs the ceremony, or null for the native runner", + "type": ["string", "null"] + } + }, + "required": ["ceremony_id", "bridge_url"], + "additionalProperties": false + }, "UserNoteUpdateRequest": { "type": "object", "properties": {"note": {"description": "The note text (max 256 characters)", "type": ["string", "null"]}} @@ -23017,6 +23638,40 @@ "required": ["user", "backup_codes"], "additionalProperties": false }, + "PasskeyMigrationCompleteRequest": { + "type": "object", + "properties": { + "response": { + "description": "WebAuthn registration response", + "$ref": "#/components/schemas/WebAuthnRegistrationResponse" + }, + "challenge": {"description": "The challenge from registration options", "type": "string"} + }, + "required": ["response", "challenge"] + }, + "PasskeyMigrationResponse": { + "type": "object", + "properties": { + "pending": { + "anyOf": [ + { + "type": "object", + "properties": { + "credential_id": {"type": "string", "description": "ID of the passkey waiting to be updated"}, + "name": {"type": "string", "description": "User-assigned name of the passkey"}, + "cross_device": {"type": "boolean", "description": "Whether the passkey was used from another device"} + }, + "required": ["credential_id", "name", "cross_device"], + "additionalProperties": false + }, + {"type": "null"} + ], + "description": "The passkey this session can update, or null" + } + }, + "required": ["pending"], + "additionalProperties": false + }, "SudoVerificationSchema": { "type": "object", "properties": { @@ -28511,6 +29166,71 @@ {"$ref": "#/components/schemas/AuthRegistrationPendingApprovalResponse"} ] }, + "PasskeyBridgeLoginRedeemResponse": { + "oneOf": [ + {"$ref": "#/components/schemas/CancelledPasskeyBridgeLoginRedeemResponse"}, + {"$ref": "#/components/schemas/CompletedPasskeyBridgeLoginRedeemResponse"} + ] + }, + "PasskeyBridgeOptionsResponse": { + "type": "object", + "properties": { + "options": { + "description": "WebAuthn authentication options for the ceremony", + "$ref": "#/components/schemas/WebAuthnAuthenticationOptionsResponse" + } + }, + "required": ["options"], + "additionalProperties": false + }, + "PasskeyBridgeCompleteRequest": { + "type": "object", + "properties": { + "response": { + "description": "WebAuthn authentication response", + "$ref": "#/components/schemas/WebAuthnAuthenticationResponse" + } + }, + "required": ["response"] + }, + "PasskeyBridgeFinishResponse": { + "type": "object", + "properties": { + "return_url": { + "description": "Where the page runner goes next, or null for the native runner", + "type": ["string", "null"] + }, + "completion_code": { + "description": "Code the native runner redeems, or null for the page runner", + "type": ["string", "null"] + } + }, + "required": ["return_url", "completion_code"], + "additionalProperties": false + }, + "PasskeyBridgeLoginStartRequest": { + "type": "object", + "properties": { + "purpose": { + "type": "string", + "enum": ["login", "login_mfa"], + "description": "Whether the passkey signs in or completes two-factor sign in" + }, + "runner": {"$ref": "#/components/schemas/PasskeyBridgeRunner"}, + "ticket": { + "description": "The MFA ticket from the login response, for login_mfa", + "type": "string", + "minLength": 1, + "maxLength": 256 + }, + "nonce_hash": { + "type": "string", + "pattern": "^[0-9a-f]{64}$", + "description": "Lowercase hex SHA-256 digest of the nonce the starting page keeps" + } + }, + "required": ["purpose", "runner", "nonce_hash"] + }, "OriginHandoffRedeemRequest": { "type": "object", "properties": { @@ -29339,6 +30059,34 @@ "required": ["id", "rawId", "type", "clientExtensionResults", "response"], "additionalProperties": {} }, + "PasskeyBridgeRunner": { + "type": "string", + "enum": ["page", "native"], + "description": "Where the passkey ceremony runs: a page on the paired origin or the native desktop client" + }, + "CompletedPasskeyBridgeLoginRedeemResponse": { + "type": "object", + "properties": { + "status": {"type": "string", "const": "completed", "description": "The ceremony finished"}, + "token": {"type": "string", "description": "Authentication token for API requests"}, + "user_id": { + "description": "ID of the authenticated user", + "$ref": "#/components/schemas/SnowflakeStringType" + }, + "user": { + "description": "Partial user data for the authenticated account", + "$ref": "#/components/schemas/UserPartialResponse" + } + }, + "required": ["status", "token", "user_id", "user"], + "additionalProperties": false + }, + "CancelledPasskeyBridgeLoginRedeemResponse": { + "type": "object", + "properties": {"status": {"type": "string", "const": "cancelled", "description": "The ceremony was cancelled"}}, + "required": ["status"], + "additionalProperties": false + }, "AuthRegistrationPendingApprovalResponse": { "type": "object", "properties": { @@ -33666,9 +34414,10 @@ "id": {"type": "string", "description": "The credential ID"}, "name": {"type": "string", "description": "User-assigned name for the credential"}, "created_at": {"type": "string", "description": "When the credential was registered"}, - "last_used_at": {"description": "When the credential was last used", "type": ["string", "null"]} + "last_used_at": {"description": "When the credential was last used", "type": ["string", "null"]}, + "rp_id": {"type": "string", "description": "Relying party ID the passkey belongs to"} }, - "required": ["id", "name", "created_at", "last_used_at"], + "required": ["id", "name", "created_at", "last_used_at", "rp_id"], "additionalProperties": false }, "WebAuthnRegistrationResponse": { @@ -33716,6 +34465,21 @@ "x-enumDescriptions": ["Time-based one-time password authenticator", "WebAuthn authenticator"] }, "HexString32Type": {"type": "string", "pattern": "^[a-f0-9]{32}$"}, + "CompletedPasskeyBridgeSudoRedeemResponse": { + "type": "object", + "properties": { + "status": {"type": "string", "const": "completed", "description": "The ceremony finished"}, + "sudo_token": {"type": "string", "description": "Sudo mode token"} + }, + "required": ["status", "sudo_token"], + "additionalProperties": false + }, + "CancelledPasskeyBridgeSudoRedeemResponse": { + "type": "object", + "properties": {"status": {"type": "string", "const": "cancelled", "description": "The ceremony was cancelled"}}, + "required": ["status"], + "additionalProperties": false + }, "PhoneNumberType": {"type": "string"}, "RelationshipTypesInput": { "description": "Relationship type", diff --git a/fluxer_api/src/api/rate_limit_configs/AuthRateLimitConfig.ts b/fluxer_api/src/api/rate_limit_configs/AuthRateLimitConfig.ts index 8173e469b..13dfb8ab7 100644 --- a/fluxer_api/src/api/rate_limit_configs/AuthRateLimitConfig.ts +++ b/fluxer_api/src/api/rate_limit_configs/AuthRateLimitConfig.ts @@ -104,6 +104,10 @@ export const AuthRateLimitConfigs = { bucket: 'mfa:webauthn:two_factor', config: {limit: 10, windowMs: ms('1 minute')}, } as RouteRateLimitConfig, + MFA_WEBAUTHN_MIGRATION: { + bucket: 'mfa:webauthn:migration', + config: {limit: 20, windowMs: ms('1 minute')}, + } as RouteRateLimitConfig, PHONE_SEND_VERIFICATION: { bucket: 'phone:send_verification', config: {limit: 5, windowMs: ms('1 minute')}, @@ -140,6 +144,26 @@ export const AuthRateLimitConfigs = { bucket: 'auth:origin_handoff:redeem', config: {limit: 10, windowMs: ms('1 minute')}, } as RouteRateLimitConfig, + AUTH_PASSKEY_BRIDGE_START: { + bucket: 'auth:passkey_bridge:start', + config: {limit: 10, windowMs: ms('1 minute')}, + } as RouteRateLimitConfig, + AUTH_PASSKEY_BRIDGE_CEREMONY: { + bucket: 'auth:passkey_bridge:ceremony', + config: {limit: 20, windowMs: ms('1 minute')}, + } as RouteRateLimitConfig, + AUTH_PASSKEY_BRIDGE_REDEEM: { + bucket: 'auth:passkey_bridge:redeem', + config: {limit: 60, windowMs: ms('1 minute')}, + } as RouteRateLimitConfig, + USER_PASSKEY_BRIDGE_START: { + bucket: 'mfa:passkey_bridge:start', + config: {limit: 10, windowMs: ms('1 minute')}, + } as RouteRateLimitConfig, + USER_PASSKEY_BRIDGE_REDEEM: { + bucket: 'mfa:passkey_bridge:redeem', + config: {limit: 60, windowMs: ms('1 minute')}, + } as RouteRateLimitConfig, SUDO_WEBAUTHN_OPTIONS: { bucket: 'sudo:webauthn:options', config: {limit: 10, windowMs: ms('1 minute')}, diff --git a/fluxer_api/src/api/rpc/RpcService.ts b/fluxer_api/src/api/rpc/RpcService.ts index 385a05130..574067dd8 100644 --- a/fluxer_api/src/api/rpc/RpcService.ts +++ b/fluxer_api/src/api/rpc/RpcService.ts @@ -3,6 +3,7 @@ import {createHash} from 'node:crypto'; import type {ApiContext} from '@app/api/ApiContext'; import * as AuthSession from '@app/api/auth/AuthSession'; +import {visibleWebAuthnCredentials} from '@app/api/auth/services/PasskeyRelyingParty'; import type {ChannelID, GuildID, UserID} from '@app/api/BrandedTypes'; import { createChannelID, @@ -75,6 +76,7 @@ import { mapUserGuildSettingsToResponse, mapUserSettingsToResponse, mapUserToPrivateResponse, + mapWebAuthnCredentialToResponse, } from '@app/api/user/UserMappers'; import {isUserAdult} from '@app/api/utils/AgeUtils'; import {deriveDominantAvatarColor} from '@app/api/utils/AvatarColorUtils'; @@ -1199,12 +1201,9 @@ export class RpcService { longitude: geoipLongitude, rtc_regions: rtcRegions, webauthn_credentials: timeRpcStepSync(responseBuildSteps, 'map_webauthn_credentials', () => - userData.webAuthnCredentials.map((cred) => ({ - id: cred.credentialId, - name: cred.name, - created_at: cred.createdAt.toISOString(), - last_used_at: cred.lastUsedAt?.toISOString() ?? null, - })), + visibleWebAuthnCredentials(userData.webAuthnCredentials).map((cred) => + mapWebAuthnCredentialToResponse(cred, Config.auth.passkeys.rpId), + ), ), version, }; diff --git a/fluxer_api/src/api/user/UserMappers.ts b/fluxer_api/src/api/user/UserMappers.ts index ddd575c19..18c7dbfdc 100644 --- a/fluxer_api/src/api/user/UserMappers.ts +++ b/fluxer_api/src/api/user/UserMappers.ts @@ -9,6 +9,7 @@ import type {Relationship} from '@app/api/models/Relationship'; import type {User} from '@app/api/models/User'; import type {UserGuildSettings} from '@app/api/models/UserGuildSettings'; import type {UserSettings} from '@app/api/models/UserSettings'; +import type {WebAuthnCredential} from '@app/api/models/WebAuthnCredential'; import {canUseProfileTimezone, getRequiredActions} from '@app/api/user/UserHelpers'; import {canUserAccessNsfwContent} from '@app/api/utils/AgeUtils'; import type {ChannelMessageNotifications} from '@fluxer/constants/src/NotificationConstants'; @@ -26,6 +27,7 @@ import { UserFlags, UserPremiumTypes, } from '@fluxer/constants/src/UserConstants'; +import type {WebAuthnCredentialResponse} from '@fluxer/schema/src/domains/auth/AuthSchemas'; import type { RelationshipResponse, UserGuildSettingsResponse, @@ -420,3 +422,16 @@ export function mapUserGuildSettingsToResponse(settings: UserGuildSettings): Use version: settings.version, }; } + +export function mapWebAuthnCredentialToResponse( + credential: WebAuthnCredential, + legacyRpId: string, +): WebAuthnCredentialResponse { + return { + id: credential.credentialId, + name: credential.name, + created_at: credential.createdAt.toISOString(), + last_used_at: credential.lastUsedAt?.toISOString() ?? null, + rp_id: credential.rpId ?? legacyRpId, + }; +} diff --git a/fluxer_api/src/api/user/controllers/UserAuthController.ts b/fluxer_api/src/api/user/controllers/UserAuthController.ts index b443ae5f2..aa28f9df0 100644 --- a/fluxer_api/src/api/user/controllers/UserAuthController.ts +++ b/fluxer_api/src/api/user/controllers/UserAuthController.ts @@ -1,5 +1,10 @@ // SPDX-License-Identifier: AGPL-3.0-or-later +import { + completePasskeyMigration, + getPasskeyMigration, + getPasskeyMigrationRegistrationOptions, +} from '@app/api/auth/services/PasskeyMigrationService'; import {requireSudoMode} from '@app/api/auth/services/SudoVerificationService'; import {Config} from '@app/api/Config'; import {DefaultUserOnly, LoginRequired, LoginRequiredAllowSuspicious} from '@app/api/middleware/AuthMiddleware'; @@ -34,6 +39,10 @@ import { WebAuthnTwoFactorRequest, WebAuthnTwoFactorResponse, } from '@fluxer/schema/src/domains/auth/AuthSchemas'; +import { + PasskeyMigrationCompleteRequest, + PasskeyMigrationResponse, +} from '@fluxer/schema/src/domains/auth/PasskeyMigrationSchemas'; import {CredentialIdParam} from '@fluxer/schema/src/domains/common/CommonParamSchemas'; import {EmptyBodyRequest} from '@fluxer/schema/src/domains/user/UserRequestSchemas'; @@ -347,7 +356,9 @@ export function UserAuthController(app: HonoApp) { await requireSudoMode(ctx, user, body, { issueSudoToken: false, }); - return ctx.json(await ctx.get('userAuthRequestService').generateWebAuthnRegistrationOptions(user)); + return ctx.json( + await ctx.get('userAuthRequestService').generateWebAuthnRegistrationOptions(user, ctx.req.header('origin')), + ); }, ); app.post( @@ -433,6 +444,78 @@ export function UserAuthController(app: HonoApp) { return ctx.body(null, 204); }, ); + app.get( + '/users/@me/mfa/webauthn/migration', + RateLimitMiddleware(RateLimitConfigs.MFA_WEBAUTHN_MIGRATION), + LoginRequired, + DefaultUserOnly, + OpenAPI({ + operationId: 'get_webauthn_migration', + summary: 'Get pending passkey update', + responseSchema: PasskeyMigrationResponse, + statusCode: 200, + security: ['bearerToken', 'sessionToken'], + tags: ['Users'], + description: + 'Return the passkey this session can update to the new domain after using it within the last five minutes, or null.', + }), + async (ctx) => { + return ctx.json(await getPasskeyMigration(ctx.get('apiContext'), ctx.get('user').id, ctx.get('authSession'))); + }, + ); + app.post( + '/users/@me/mfa/webauthn/migration/registration-options', + RateLimitMiddleware(RateLimitConfigs.MFA_WEBAUTHN_MIGRATION), + LoginRequired, + DefaultUserOnly, + OpenAPI({ + operationId: 'get_webauthn_migration_registration_options', + summary: 'Get passkey update registration options', + responseSchema: WebAuthnChallengeResponse, + statusCode: 200, + security: ['bearerToken', 'sessionToken'], + tags: ['Users'], + description: + 'Generate registration options for the passkey that replaces the pending one. Requires a pending passkey update for this session.', + }), + async (ctx) => { + return ctx.json( + await getPasskeyMigrationRegistrationOptions( + ctx.get('apiContext'), + ctx.get('user').id, + ctx.get('authSession'), + ctx.req.header('origin'), + ), + ); + }, + ); + app.post( + '/users/@me/mfa/webauthn/migration', + RateLimitMiddleware(RateLimitConfigs.MFA_WEBAUTHN_MIGRATION), + LoginRequired, + DefaultUserOnly, + Validator('json', PasskeyMigrationCompleteRequest), + OpenAPI({ + operationId: 'complete_webauthn_migration', + summary: 'Complete passkey update', + responseSchema: null, + statusCode: 204, + security: ['bearerToken', 'sessionToken'], + tags: ['Users'], + description: + 'Register the replacement passkey under the name of the pending one. The old passkey stops appearing in lists and is removed together with its replacement.', + }), + async (ctx) => { + await completePasskeyMigration( + ctx.get('apiContext'), + ctx.get('user').id, + ctx.get('authSession'), + ctx.req.header('origin'), + ctx.req.valid('json'), + ); + return ctx.body(null, 204); + }, + ); app.put( '/users/@me/mfa/webauthn/two-factor', RateLimitMiddleware(RateLimitConfigs.MFA_WEBAUTHN_TWO_FACTOR), @@ -492,7 +575,9 @@ export function UserAuthController(app: HonoApp) { 'Generate WebAuthn challenge for sudo mode verification using a registered security key or biometric device.', }), async (ctx) => { - return ctx.json(await ctx.get('userAuthRequestService').getSudoWebAuthnOptions(ctx.get('user'))); + return ctx.json( + await ctx.get('userAuthRequestService').getSudoWebAuthnOptions(ctx.get('user'), ctx.req.header('origin')), + ); }, ); } diff --git a/fluxer_api/src/api/user/repositories/IUserAuthRepository.ts b/fluxer_api/src/api/user/repositories/IUserAuthRepository.ts index cf82cae4d..2a28fa854 100644 --- a/fluxer_api/src/api/user/repositories/IUserAuthRepository.ts +++ b/fluxer_api/src/api/user/repositories/IUserAuthRepository.ts @@ -65,10 +65,12 @@ export interface IUserAuthRepository { counter: bigint, transports: Set | null, name: string, + rpId: string | null, ): Promise; updateWebAuthnCredentialCounter(userId: UserID, credentialId: string, counter: bigint): Promise; updateWebAuthnCredentialLastUsed(userId: UserID, credentialId: string): Promise; updateWebAuthnCredentialName(userId: UserID, credentialId: string, name: string): Promise; + setWebAuthnCredentialSupersededBy(userId: UserID, credentialId: string, supersededBy: string): Promise; deleteWebAuthnCredential(userId: UserID, credentialId: string): Promise; getUserIdByCredentialId(credentialId: string): Promise; deleteAllWebAuthnCredentials(userId: UserID): Promise; diff --git a/fluxer_api/src/api/user/repositories/UserAuthRepository.ts b/fluxer_api/src/api/user/repositories/UserAuthRepository.ts index 46bbcf57e..3a693a516 100644 --- a/fluxer_api/src/api/user/repositories/UserAuthRepository.ts +++ b/fluxer_api/src/api/user/repositories/UserAuthRepository.ts @@ -193,8 +193,17 @@ export class UserAuthRepository implements IUserAuthRepository { counter: bigint, transports: Set | null, name: string, + rpId: string | null, ): Promise { - return this.webAuthnRepository.createWebAuthnCredential(userId, credentialId, publicKey, counter, transports, name); + return this.webAuthnRepository.createWebAuthnCredential( + userId, + credentialId, + publicKey, + counter, + transports, + name, + rpId, + ); } async updateWebAuthnCredentialCounter(userId: UserID, credentialId: string, counter: bigint): Promise { @@ -209,6 +218,10 @@ export class UserAuthRepository implements IUserAuthRepository { return this.webAuthnRepository.updateWebAuthnCredentialName(userId, credentialId, name); } + async setWebAuthnCredentialSupersededBy(userId: UserID, credentialId: string, supersededBy: string): Promise { + return this.webAuthnRepository.setWebAuthnCredentialSupersededBy(userId, credentialId, supersededBy); + } + async deleteWebAuthnCredential(userId: UserID, credentialId: string): Promise { return this.webAuthnRepository.deleteWebAuthnCredential(userId, credentialId); } diff --git a/fluxer_api/src/api/user/repositories/UserRepository.ts b/fluxer_api/src/api/user/repositories/UserRepository.ts index ef7a76744..f8b1ce290 100644 --- a/fluxer_api/src/api/user/repositories/UserRepository.ts +++ b/fluxer_api/src/api/user/repositories/UserRepository.ts @@ -407,8 +407,9 @@ export class UserRepository implements IUserRepositoryAggregate { counter: bigint, transports: Set | null, name: string, + rpId: string | null, ): Promise { - return this.authRepo.createWebAuthnCredential(userId, credentialId, publicKey, counter, transports, name); + return this.authRepo.createWebAuthnCredential(userId, credentialId, publicKey, counter, transports, name, rpId); } async updateWebAuthnCredentialCounter(userId: UserID, credentialId: string, counter: bigint): Promise { @@ -423,6 +424,10 @@ export class UserRepository implements IUserRepositoryAggregate { return this.authRepo.updateWebAuthnCredentialName(userId, credentialId, name); } + async setWebAuthnCredentialSupersededBy(userId: UserID, credentialId: string, supersededBy: string): Promise { + return this.authRepo.setWebAuthnCredentialSupersededBy(userId, credentialId, supersededBy); + } + async deleteWebAuthnCredential(userId: UserID, credentialId: string): Promise { return this.authRepo.deleteWebAuthnCredential(userId, credentialId); } diff --git a/fluxer_api/src/api/user/repositories/auth/WebAuthnRepository.ts b/fluxer_api/src/api/user/repositories/auth/WebAuthnRepository.ts index b7f8c7a20..165439144 100644 --- a/fluxer_api/src/api/user/repositories/auth/WebAuthnRepository.ts +++ b/fluxer_api/src/api/user/repositories/auth/WebAuthnRepository.ts @@ -26,7 +26,7 @@ const FETCH_WEBAUTHN_CREDENTIALS_FOR_USER_CQL = WebAuthnCredentials.selectCql({ export class WebAuthnRepository { async listWebAuthnCredentials(userId: UserID): Promise> { const credentials = await fetchMany(FETCH_WEBAUTHN_CREDENTIALS_CQL, {user_id: userId}); - return credentials.map((cred) => new WebAuthnCredential(cred)); + return credentials.filter((cred) => cred.public_key).map((cred) => new WebAuthnCredential(cred)); } async getWebAuthnCredential(userId: UserID, credentialId: string): Promise { @@ -34,7 +34,7 @@ export class WebAuthnRepository { user_id: userId, credential_id: credentialId, }); - if (!cred) { + if (!cred?.public_key) { return null; } return new WebAuthnCredential(cred); @@ -47,6 +47,7 @@ export class WebAuthnRepository { counter: bigint, transports: Set | null, name: string, + rpId: string | null, ): Promise { const credentialData = { user_id: userId, @@ -58,6 +59,8 @@ export class WebAuthnRepository { created_at: new Date(), last_used_at: null, version: 1 as const, + rp_id: rpId, + superseded_by: null, }; await upsertOne(WebAuthnCredentials.insert(credentialData)); await upsertOne( @@ -101,6 +104,17 @@ export class WebAuthnRepository { ); } + async setWebAuthnCredentialSupersededBy(userId: UserID, credentialId: string, supersededBy: string): Promise { + await upsertOne( + WebAuthnCredentials.patchByPk( + {user_id: userId, credential_id: credentialId}, + { + superseded_by: Db.set(supersededBy), + }, + ), + ); + } + async deleteWebAuthnCredential(userId: UserID, credentialId: string): Promise { await deleteOneOrMany( WebAuthnCredentials.deleteByPk({ diff --git a/fluxer_api/src/api/user/services/UserAuthRequestService.ts b/fluxer_api/src/api/user/services/UserAuthRequestService.ts index 66bb68537..029d36bf9 100644 --- a/fluxer_api/src/api/user/services/UserAuthRequestService.ts +++ b/fluxer_api/src/api/user/services/UserAuthRequestService.ts @@ -4,12 +4,13 @@ import type {ApiContext} from '@app/api/ApiContext'; import * as AuthMfa from '@app/api/auth/AuthMfa'; import * as AuthPhone from '@app/api/auth/AuthPhone'; import {requireEmailVerified} from '@app/api/auth/EmailVerificationUtils'; +import {visibleWebAuthnCredentials} from '@app/api/auth/services/PasskeyRelyingParty'; import type {SudoVerificationResult} from '@app/api/auth/services/SudoVerificationService'; import type {IGuildRepositoryAggregate} from '@app/api/guild/repositories/IGuildRepositoryAggregate'; import type {User} from '@app/api/models/User'; import type {IUserRepository} from '@app/api/user/IUserRepository'; import * as UserAuth from '@app/api/user/services/UserAuth'; -import {mapUserToPrivateResponse} from '@app/api/user/UserMappers'; +import {mapUserToPrivateResponse, mapWebAuthnCredentialToResponse} from '@app/api/user/UserMappers'; import {GuildVerificationLevel} from '@fluxer/constants/src/GuildConstants'; import {UserAuthenticatorTypes} from '@fluxer/constants/src/UserConstants'; import {PhoneAddNotEligibleError} from '@fluxer/errors/src/domains/auth/PhoneAddNotEligibleError'; @@ -170,17 +171,16 @@ export class UserAuthRequestService { async listWebAuthnCredentials(user: User): Promise { const credentials = await this.userRepository.listWebAuthnCredentials(user.id); - return credentials.map((cred) => ({ - id: cred.credentialId, - name: cred.name, - created_at: cred.createdAt.toISOString(), - last_used_at: cred.lastUsedAt?.toISOString() ?? null, - })); + const legacyRpId = this.apiContext.services.config.auth.passkeys.rpId; + return visibleWebAuthnCredentials(credentials).map((cred) => mapWebAuthnCredentialToResponse(cred, legacyRpId)); } - async generateWebAuthnRegistrationOptions(user: User): Promise { + async generateWebAuthnRegistrationOptions( + user: User, + origin: string | undefined, + ): Promise { requireEmailVerified(user, 'mfa'); - const options = await AuthMfa.generateWebAuthnRegistrationOptions(this.apiContext, user.id); + const options = await AuthMfa.generateWebAuthnRegistrationOptions(this.apiContext, user.id, origin); return this.toWebAuthnChallengeResponse(options); } @@ -217,8 +217,8 @@ export class UserAuthRequestService { return AuthMfa.getAvailableMfaMethods(this.apiContext, user.id); } - async getSudoWebAuthnOptions(user: User): Promise { - const options = await AuthMfa.generateWebAuthnOptionsForSudo(this.apiContext, user.id); + async getSudoWebAuthnOptions(user: User, origin: string | undefined): Promise { + const options = await AuthMfa.generateWebAuthnOptionsForSudo(this.apiContext, user.id, origin); return this.toWebAuthnChallengeResponse(options); } diff --git a/fluxer_app/src/features/app/constants/Endpoints.ts b/fluxer_app/src/features/app/constants/Endpoints.ts index e571c78f0..17b99e8e1 100644 --- a/fluxer_app/src/features/app/constants/Endpoints.ts +++ b/fluxer_app/src/features/app/constants/Endpoints.ts @@ -21,6 +21,11 @@ export const Endpoints = { AUTH_HANDOFF_INFO: (code: string) => `/auth/handoff/${code}/info`, AUTH_HANDOFF_STATUS: (code: string) => `/auth/handoff/${code}/status`, AUTH_HANDOFF_CANCEL: (code: string) => `/auth/handoff/${code}`, + AUTH_PASSKEY_BRIDGE: '/auth/passkey-bridge', + AUTH_PASSKEY_BRIDGE_OPTIONS: (ceremonyId: string) => `/auth/passkey-bridge/${ceremonyId}/options`, + AUTH_PASSKEY_BRIDGE_COMPLETE: (ceremonyId: string) => `/auth/passkey-bridge/${ceremonyId}/complete`, + AUTH_PASSKEY_BRIDGE_CANCEL: (ceremonyId: string) => `/auth/passkey-bridge/${ceremonyId}/cancel`, + AUTH_PASSKEY_BRIDGE_REDEEM: (ceremonyId: string) => `/auth/passkey-bridge/${ceremonyId}/redeem`, AUTH_FORGOT_PASSWORD: '/auth/forgot', AUTH_RESET_PASSWORD: '/auth/reset', AUTH_VALIDATE_RESET_PASSWORD_TOKEN: (token: string) => `/auth/reset/${encodeURIComponent(token)}`, @@ -173,6 +178,10 @@ export const Endpoints = { USER_MFA_WEBAUTHN_REGISTRATION_OPTIONS: '/users/@me/mfa/webauthn/credentials/registration-options', USER_MFA_WEBAUTHN_CREDENTIAL: (credentialId: string) => `/users/@me/mfa/webauthn/credentials/${credentialId}`, USER_MFA_WEBAUTHN_TWO_FACTOR: '/users/@me/mfa/webauthn/two-factor', + USER_MFA_WEBAUTHN_MIGRATION: '/users/@me/mfa/webauthn/migration', + USER_MFA_WEBAUTHN_MIGRATION_REGISTRATION_OPTIONS: '/users/@me/mfa/webauthn/migration/registration-options', + USER_PASSKEY_BRIDGE: '/users/@me/passkey-bridge', + USER_PASSKEY_BRIDGE_REDEEM: (ceremonyId: string) => `/users/@me/passkey-bridge/${ceremonyId}/redeem`, USER_PHONE_SEND_VERIFICATION: '/users/@me/phone/send-verification', USER_PHONE_INBOUND_CHALLENGE: '/users/@me/phone/inbound-challenge', USER_PHONE_VERIFY: '/users/@me/phone/verify', diff --git a/fluxer_app/src/features/app/domain_migration/DomainMigration.test.ts b/fluxer_app/src/features/app/domain_migration/DomainMigration.test.ts index f76991dd3..4e86f25a5 100644 --- a/fluxer_app/src/features/app/domain_migration/DomainMigration.test.ts +++ b/fluxer_app/src/features/app/domain_migration/DomainMigration.test.ts @@ -60,7 +60,7 @@ function environment( installKind: core.DomainMigrationInstallKind, overrides: Partial = {}, ): core.DomainMigrationEnvironment { - return {installKind, electron: false, electronMigrationVersion: null, ...overrides}; + return {installKind, electron: false, electronMigrationVersion: null, electronPasskeyRpIds: [], ...overrides}; } function gateInput(overrides: Partial = {}): core.DomainMigrationGateInput { @@ -70,7 +70,6 @@ function gateInput(overrides: Partial = {}): core discovery: ENABLED_DISCOVERY, marker: null, now: NOW, - relatedOriginsSupported: true, voiceActive: false, oneShotRoute: false, ...overrides, @@ -255,7 +254,13 @@ describe('migration gate', () => { expect(core.shouldStartDomainMigration(gateInput())).toBe(true); expect( core.shouldStartDomainMigration( - gateInput({environment: environment('none', {electron: true, electronMigrationVersion: 1})}), + gateInput({ + environment: environment('none', { + electron: true, + electronMigrationVersion: 1, + electronPasskeyRpIds: ['fluxer.app', 'fluxer.com'], + }), + }), ), ).toBe(true); }); @@ -272,7 +277,16 @@ describe('migration gate', () => { ['Firefox web app', {environment: environment('firefox')}], ['other web app', {environment: environment('other')}], ['old desktop', {environment: environment('none', {electron: true})}], - ['no related origins', {relatedOriginsSupported: false}], + [ + 'desktop that cannot create fluxer.com passkeys', + { + environment: environment('none', { + electron: true, + electronMigrationVersion: 1, + electronPasskeyRpIds: ['fluxer.app'], + }), + }, + ], ['in a voice call', {voiceActive: true}], ['on a one-shot token route', {oneShotRoute: true}], ])('blocks when %s', (_label, overrides) => { diff --git a/fluxer_app/src/features/app/domain_migration/DomainMigrationBrowser.ts b/fluxer_app/src/features/app/domain_migration/DomainMigrationBrowser.ts index 9d265c10a..a36dd4491 100644 --- a/fluxer_app/src/features/app/domain_migration/DomainMigrationBrowser.ts +++ b/fluxer_app/src/features/app/domain_migration/DomainMigrationBrowser.ts @@ -27,10 +27,6 @@ const DISPLAY_MODES: ReadonlyArray = [ 'minimal-ui', ]; -interface PublicKeyCredentialWithCapabilities { - getClientCapabilities?: () => Promise>; -} - export function readDomainMigrationDiscovery(): DomainMigrationDiscoveryResponse | null { return window.__FLUXER_BOOTSTRAP__?.instance.domain_migration ?? null; } @@ -68,20 +64,16 @@ export function readDomainMigrationEnvironment(): DomainMigrationEnvironment { installKind: detectDomainMigrationInstallKind(), electron: isElectronEnvironment(), electronMigrationVersion: window.electron?.domainMigration?.version ?? null, + electronPasskeyRpIds: window.electron?.passkeyRpIds ?? [], }; } -export async function browserSupportsRelatedOrigins(): Promise { - if (typeof PublicKeyCredential === 'undefined') { - return false; - } - const credential = PublicKeyCredential as unknown as PublicKeyCredentialWithCapabilities; - if (typeof credential.getClientCapabilities !== 'function') { - return false; +export async function desktopPasskeysSupported(): Promise { + if (!isElectronEnvironment()) { + return true; } try { - const capabilities = await credential.getClientCapabilities(); - return capabilities.relatedOrigins === true; + return (await window.electron?.passkeyIsSupported?.()) === true; } catch { return false; } diff --git a/fluxer_app/src/features/app/domain_migration/DomainMigrationCore.ts b/fluxer_app/src/features/app/domain_migration/DomainMigrationCore.ts index fe470c8bd..60c6fcaed 100644 --- a/fluxer_app/src/features/app/domain_migration/DomainMigrationCore.ts +++ b/fluxer_app/src/features/app/domain_migration/DomainMigrationCore.ts @@ -3,6 +3,7 @@ import type {RuntimeConfigSnapshot} from '@app/features/app/state/RuntimeConfig'; import type {StoredAccount} from '@app/features/auth/state/AccountStorage'; import {isIOSMobileOrTabletUserAgent} from '@app/features/platform/notifications/NotificationAlertOptions'; +import {PASSKEY_MIGRATION_RP_ID} from '@fluxer/constants/src/PasskeyConstants'; import type {DomainMigrationDiscoveryResponse} from '@fluxer/schema/src/domains/admin/DomainMigrationSchemas'; import {experimentBucket} from '@fluxer/schema/src/domains/experiment/ExperimentBucket'; @@ -256,6 +257,7 @@ export interface DomainMigrationEnvironment { installKind: DomainMigrationInstallKind; electron: boolean; electronMigrationVersion: number | null; + electronPasskeyRpIds: ReadonlyArray; } export function environmentAllowsDomainMigration(environment: DomainMigrationEnvironment): boolean { @@ -263,7 +265,11 @@ export function environmentAllowsDomainMigration(environment: DomainMigrationEnv return false; } if (environment.electron) { - return environment.electronMigrationVersion !== null && environment.electronMigrationVersion >= 1; + return ( + environment.electronMigrationVersion !== null && + environment.electronMigrationVersion >= 1 && + environment.electronPasskeyRpIds.includes(PASSKEY_MIGRATION_RP_ID) + ); } return true; } @@ -284,7 +290,6 @@ export interface DomainMigrationGateInput { discovery: DomainMigrationDiscoveryResponse | null; marker: DomainMigrationMarker | null; now: number; - relatedOriginsSupported: boolean; voiceActive: boolean; oneShotRoute: boolean; } @@ -295,7 +300,6 @@ export function shouldStartDomainMigration(input: DomainMigrationGateInput): boo input.discovery?.enabled === true && markerAllowsDomainMigration(input.marker, input.now) && environmentAllowsDomainMigration(input.environment) && - input.relatedOriginsSupported && !input.voiceActive && !input.oneShotRoute ); diff --git a/fluxer_app/src/features/app/domain_migration/DomainMigrationPreMount.ts b/fluxer_app/src/features/app/domain_migration/DomainMigrationPreMount.ts index 40b805387..c7b1afa20 100644 --- a/fluxer_app/src/features/app/domain_migration/DomainMigrationPreMount.ts +++ b/fluxer_app/src/features/app/domain_migration/DomainMigrationPreMount.ts @@ -51,7 +51,6 @@ import { randomBase64Url, sha256Hex, } from '@app/features/app/domain_migration/DomainMigrationCrypto'; -import {resolvePasskeyBridgeOpenerOrigin} from '@app/features/auth/utils/PasskeyBridgeProtocol'; import type {SoundType} from '@app/features/notification/utils/SoundUtils'; import {getProtectedLocalStorage, getProtectedSessionStorage} from '@app/features/platform/state/ProtectedWebStorage'; import {Logger} from '@app/features/platform/utils/AppLogger'; @@ -593,7 +592,7 @@ export async function runDomainMigrationPreMount(): Promise { return false; } const side = resolveDomainMigrationSide(window.location.origin); - if (side === null || resolvePasskeyBridgeOpenerOrigin(window.location.origin, window.location.pathname) !== null) { + if (side === null) { return false; } try { diff --git a/fluxer_app/src/features/app/domain_migration/DomainMigrationTrigger.ts b/fluxer_app/src/features/app/domain_migration/DomainMigrationTrigger.ts index e7265bab2..fdc310db2 100644 --- a/fluxer_app/src/features/app/domain_migration/DomainMigrationTrigger.ts +++ b/fluxer_app/src/features/app/domain_migration/DomainMigrationTrigger.ts @@ -2,7 +2,7 @@ import {Routes} from '@app/app/Routes'; import { - browserSupportsRelatedOrigins, + desktopPasskeysSupported, readDomainMigrationDiscovery, readDomainMigrationEnvironment, } from '@app/features/app/domain_migration/DomainMigrationBrowser'; @@ -50,28 +50,24 @@ function isOneShotRoute(pathname: string): boolean { return ONE_SHOT_ROUTE_PREFIXES.some((prefix) => pathname === prefix || pathname.startsWith(`${prefix}/`)); } -function readGateInput(assignmentEnabled: boolean, relatedOriginsSupported: boolean): DomainMigrationGateInput { +function readGateInput(assignmentEnabled: boolean): DomainMigrationGateInput { return { environment: readDomainMigrationEnvironment(), assignmentEnabled, discovery: readDomainMigrationDiscovery(), marker: readDomainMigrationMarker(getProtectedLocalStorage()), now: Date.now(), - relatedOriginsSupported, voiceActive: isVoiceActive(), oneShotRoute: isOneShotRoute(window.location.pathname), }; } async function evaluateSource(side: DomainMigrationSide, assignmentEnabled: boolean): Promise { - if (navigating || !shouldStartDomainMigration(readGateInput(assignmentEnabled, true))) { + if (navigating || !shouldStartDomainMigration(readGateInput(assignmentEnabled))) { return; } - const relatedOriginsSupported = await browserSupportsRelatedOrigins(); - if ( - navigating || - !shouldStartDomainMigration(readGateInput(DomainMigrationRollout.enabled, relatedOriginsSupported)) - ) { + const passkeysSupported = await desktopPasskeysSupported(); + if (navigating || !passkeysSupported || !shouldStartDomainMigration(readGateInput(DomainMigrationRollout.enabled))) { return; } navigating = true; diff --git a/fluxer_app/src/features/auth/components/PasswordManagerPasskeyAction.tsx b/fluxer_app/src/features/auth/components/PasswordManagerPasskeyAction.tsx deleted file mode 100644 index a5651f1fe..000000000 --- a/fluxer_app/src/features/auth/components/PasswordManagerPasskeyAction.tsx +++ /dev/null @@ -1,55 +0,0 @@ -// SPDX-License-Identifier: AGPL-3.0-or-later - -import {isPasskeyBridgeAvailable} from '@app/features/auth/utils/PasskeyBridge'; -import {Button} from '@app/features/ui/button/Button'; -import {WarningAlert} from '@app/features/ui/warning_alert/WarningAlert'; -import {msg} from '@lingui/core/macro'; -import {useLingui} from '@lingui/react/macro'; -import {PasswordIcon} from '@phosphor-icons/react'; -import type React from 'react'; - -const USE_A_PASSWORD_MANAGER_PASSKEY_DESCRIPTOR = msg({ - message: 'Use a password manager passkey', - comment: - 'Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there.', -}); -const PASSWORD_MANAGER_PASSKEY_SUGGESTION_DESCRIPTOR = msg({ - message: - 'Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead.', - comment: - 'Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address.', -}); - -interface PasswordManagerPasskeyActionProps { - suggested: boolean; - disabled?: boolean; - onClick: (event: React.MouseEvent | React.KeyboardEvent) => void; -} - -export function PasswordManagerPasskeyAction({suggested, disabled, onClick}: PasswordManagerPasskeyActionProps) { - const {i18n} = useLingui(); - if (!isPasskeyBridgeAvailable()) { - return null; - } - const button = ( - - ); - if (!suggested) { - return button; - } - return ( - - {i18n._(PASSWORD_MANAGER_PASSKEY_SUGGESTION_DESCRIPTOR)} - - ); -} diff --git a/fluxer_app/src/features/auth/components/modals/PasskeyNameModal.tsx b/fluxer_app/src/features/auth/components/modals/PasskeyNameModal.tsx index 35d8e5386..7aa44ae34 100644 --- a/fluxer_app/src/features/auth/components/modals/PasskeyNameModal.tsx +++ b/fluxer_app/src/features/auth/components/modals/PasskeyNameModal.tsx @@ -1,12 +1,6 @@ // SPDX-License-Identifier: AGPL-3.0-or-later import * as Modal from '@app/features/app/components/dialogs/Modal'; -import {PasswordManagerPasskeyAction} from '@app/features/auth/components/PasswordManagerPasskeyAction'; -import {describePasskeyBridgeFailure, shouldSuggestPasskeyBridge} from '@app/features/auth/utils/PasskeyBridge'; -import { - PASSKEY_DOMAIN_UNSUPPORTED_DESCRIPTOR, - PasskeyDomainUnsupportedError, -} from '@app/features/auth/utils/WebAuthnUtils'; import {HttpError} from '@app/features/platform/types/EndpointError'; import {Button} from '@app/features/ui/button/Button'; import * as ModalCommands from '@app/features/ui/commands/ModalCommands'; @@ -16,8 +10,6 @@ import * as FormUtils from '@app/lib/forms'; import {msg} from '@lingui/core/macro'; import {Trans, useLingui} from '@lingui/react/macro'; import {observer} from 'mobx-react-lite'; -import type React from 'react'; -import {useState} from 'react'; import {useForm} from 'react-hook-form'; const NAME_PASSKEY_FORM_DESCRIPTOR = msg({ @@ -41,58 +33,16 @@ interface FormInputs { name: string; } -interface PasskeyNameModalProps { - onSubmit: (name: string) => void | Promise; - onSubmitWithPasswordManager?: (name: string) => Promise; -} - -export const PasskeyNameModal = observer(({onSubmit, onSubmitWithPasswordManager}: PasskeyNameModalProps) => { +export const PasskeyNameModal = observer(({onSubmit}: {onSubmit: (name: string) => void | Promise}) => { const {i18n} = useLingui(); const form = useForm(); - const [passkeyBridgeSuggested, setPasskeyBridgeSuggested] = useState(false); - const [passkeyBridgeSubmitting, setPasskeyBridgeSubmitting] = useState(false); - const handlePasswordManagerSubmit = ( - event: React.MouseEvent | React.KeyboardEvent, - ) => { - if (!onSubmitWithPasswordManager || passkeyBridgeSubmitting || form.formState.isSubmitting) { - return; - } - if (event.currentTarget.form?.reportValidity() === false) { - return; - } - const submission = onSubmitWithPasswordManager(form.getValues('name').trim()); - form.clearErrors('name'); - setPasskeyBridgeSubmitting(true); - submission - .then(() => { - ModalCommands.pop(); - }) - .catch((error: unknown) => { - if (error instanceof HttpError) { - FormUtils.handleError(i18n, form, error, 'name'); - return; - } - const descriptor = describePasskeyBridgeFailure(error); - if (descriptor) { - form.setError('name', {type: 'server', message: i18n._(descriptor)}); - } - }) - .finally(() => { - setPasskeyBridgeSubmitting(false); - }); - }; const handleSubmit = async (data: FormInputs) => { try { await onSubmit(data.name.trim()); ModalCommands.pop(); } catch (error) { - if (onSubmitWithPasswordManager && shouldSuggestPasskeyBridge(error)) { - setPasskeyBridgeSuggested(true); - } if (error instanceof HttpError) { FormUtils.handleError(i18n, form, error, 'name'); - } else if (error instanceof PasskeyDomainUnsupportedError) { - form.setError('name', {type: 'server', message: i18n._(PASSKEY_DOMAIN_UNSUPPORTED_DESCRIPTOR)}); } else { form.setError('name', {type: 'server', message: FormUtils.extractErrorMessage(i18n, error)}); } @@ -123,14 +73,6 @@ export const PasskeyNameModal = observer(({onSubmit, onSubmitWithPasswordManager required={true} type="text" /> - {onSubmitWithPasswordManager && ( - - )} @@ -140,7 +82,6 @@ export const PasskeyNameModal = observer(({onSubmit, onSubmitWithPasswordManager + ) : webAuthnInFlight ? (
{ Continue with passkey )} - {!webAuthnInFlight && ( - + {legacyLinkActive && legacyLinkFollowed && !webAuthnError && ( +

+ {i18n._(FINISH_IN_THE_NEW_TAB_DESCRIPTOR)} +

)} {webAuthnError && (

diff --git a/fluxer_app/src/features/auth/flow/AuthLoginLayout.tsx b/fluxer_app/src/features/auth/flow/AuthLoginLayout.tsx index 8c238e563..dadb306fc 100644 --- a/fluxer_app/src/features/auth/flow/AuthLoginLayout.tsx +++ b/fluxer_app/src/features/auth/flow/AuthLoginLayout.tsx @@ -28,6 +28,7 @@ import {ConnectedHandoffApprovalFlow} from '@app/features/auth/flow/HandoffAppro import IpAuthorizationScreen from '@app/features/auth/flow/IpAuthorizationScreen'; import {useAuthCardPresentation} from '@app/features/auth/flow/useAuthCardPresentation'; import {useLoginFormController} from '@app/features/auth/hooks/useLoginFlow'; +import {usePasskeyBridgeReturn} from '@app/features/auth/passkey_migration/usePasskeyBridgeReturn'; import AccountManager from '@app/features/auth/state/AccountManager'; import { type IpAuthorizationChallenge, @@ -35,7 +36,11 @@ import { startSsoLogin, } from '@app/features/auth/state/AuthFlow'; import {shouldOfferOldAppSignIn} from '@app/features/auth/utils/OldAppSignIn'; -import {NEED_ACCOUNT_DESCRIPTOR, SIGN_IN_DESCRIPTOR} from '@app/features/i18n/utils/CommonMessageDescriptors'; +import { + COULDN_T_VERIFY_WITH_PASSKEY_DESCRIPTOR, + NEED_ACCOUNT_DESCRIPTOR, + SIGN_IN_DESCRIPTOR, +} from '@app/features/i18n/utils/CommonMessageDescriptors'; import * as RouterUtils from '@app/features/navigation/utils/RouterUtils'; import {useLocation} from '@app/features/platform/components/router/RouterReact'; import {type Account, SessionExpiredError} from '@app/features/platform/state/AuthSession'; @@ -162,28 +167,29 @@ export const AuthLoginLayout = observer(function AuthLoginLayout({ }, [desktopHandoff, handoff, onLoginComplete], ); - const { - form, - isLoading, - fieldErrors, - handlePasskeyLogin, - handlePasskeyBrowserLogin, - handlePasskeyBridgeLogin, - passkeyBridgeSuggested, - isPasskeyLoading, - } = useLoginFormController({ + const {form, isLoading, fieldErrors, handlePasskeyLogin, handlePasskeyBrowserLogin, isPasskeyLoading} = + useLoginFormController({ + redirectPath, + inviteCode, + onLoginSuccess: handleLoginSuccess, + onRequireMfa: (challenge) => { + AuthenticationCommands.setMfaTicket(challenge); + }, + onRequireIpAuthorization: (challenge) => { + setIpAuthChallenge(challenge); + }, + }); + const isPasskeyBridgeRedeeming = usePasskeyBridgeReturn({ redirectPath, - inviteCode, onLoginSuccess: handleLoginSuccess, - onRequireMfa: (challenge) => { - AuthenticationCommands.setMfaTicket(challenge); - }, - onRequireIpAuthorization: (challenge) => { - setIpAuthChallenge(challenge); + onRequireMfa: AuthenticationCommands.setMfaTicket, + onFailure: () => { + setSwitchError(i18n._(COULDN_T_VERIFY_WITH_PASSKEY_DESCRIPTOR)); }, }); const showBrowserPasskey = IS_DEV || isDesktop(); - const passkeyControlsDisabled = isLoading || Boolean(form.isSubmitting) || isPasskeyLoading; + const passkeyControlsDisabled = + isLoading || Boolean(form.isSubmitting) || isPasskeyLoading || isPasskeyBridgeRedeeming; const offerOldAppSignIn = useMemo( () => !desktopHandoff && @@ -414,7 +420,7 @@ export const AuthLoginLayout = observer(function AuthLoginLayout({ ) : null } - disableSubmit={isPasskeyLoading} + disableSubmit={isPasskeyLoading || isPasskeyBridgeRedeeming} data-flx="auth.flow.auth-login-layout.auth-login-email-password-form" /> diff --git a/fluxer_app/src/features/auth/flow/MfaScreen.module.css b/fluxer_app/src/features/auth/flow/MfaScreen.module.css index d0045aeee..8efcb6e80 100644 --- a/fluxer_app/src/features/auth/flow/MfaScreen.module.css +++ b/fluxer_app/src/features/auth/flow/MfaScreen.module.css @@ -30,9 +30,6 @@ } .webauthnSection { - display: flex; - flex-direction: column; - gap: 0.5rem; margin-top: 1rem; } diff --git a/fluxer_app/src/features/auth/flow/MfaScreen.tsx b/fluxer_app/src/features/auth/flow/MfaScreen.tsx index 188290f79..b4fa4cca9 100644 --- a/fluxer_app/src/features/auth/flow/MfaScreen.tsx +++ b/fluxer_app/src/features/auth/flow/MfaScreen.tsx @@ -1,7 +1,6 @@ // SPDX-License-Identifier: AGPL-3.0-or-later import {MFA_CODE_DIGIT_COUNT} from '@app/features/app/config/I18nDisplayConstants'; -import {PasswordManagerPasskeyAction} from '@app/features/auth/components/PasswordManagerPasskeyAction'; import FormField from '@app/features/auth/flow/AuthFormField'; import styles from '@app/features/auth/flow/MfaScreen.module.css'; import {useAuthCardPresentation} from '@app/features/auth/flow/useAuthCardPresentation'; @@ -54,16 +53,7 @@ interface MfaScreenProps { const MfaScreen = ({challenge, inviteCode, onSuccess, onCancel}: MfaScreenProps) => { const {i18n} = useLingui(); - const { - form, - isLoading, - fieldErrors, - handleWebAuthn, - handlePasskeyBridge, - passkeyBridgeSuggested, - isWebAuthnLoading, - supports, - } = useMfaController({ + const {form, isLoading, fieldErrors, handleWebAuthn, isWebAuthnLoading, supports} = useMfaController({ ticket: challenge.ticket, methods: {totp: challenge.totp, webauthn: challenge.webauthn, backupCodes: challenge.backupCodes}, inviteCode, @@ -138,12 +128,6 @@ const MfaScreen = ({challenge, inviteCode, onSuccess, onCancel}: MfaScreenProps) > {i18n._(isCodePrimary ? TRY_SECURITY_KEY_INSTEAD_DESCRIPTOR : SECURITY_KEY_OR_PASSKEY_DESCRIPTOR)} -

)}
diff --git a/fluxer_app/src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx b/fluxer_app/src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx index bc520f8f1..a0c93b702 100644 --- a/fluxer_app/src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx +++ b/fluxer_app/src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx @@ -1,6 +1,5 @@ // SPDX-License-Identifier: AGPL-3.0-or-later -import {PasswordManagerPasskeyAction} from '@app/features/auth/components/PasswordManagerPasskeyAction'; import {Button} from '@app/features/ui/button/Button'; import {Trans} from '@lingui/react/macro'; import {BrowserIcon, KeyIcon} from '@phosphor-icons/react'; @@ -51,8 +50,6 @@ interface Props { onPasskeyLogin: () => void; showBrowserOption: boolean; onBrowserLogin?: () => void; - onPasswordManagerLogin?: () => void; - passwordManagerSuggested?: boolean; primaryLabel?: React.ReactNode; browserLabel?: React.ReactNode; } @@ -63,8 +60,6 @@ export default function AuthLoginPasskeyActions({ onPasskeyLogin, showBrowserOption, onBrowserLogin, - onPasswordManagerLogin, - passwordManagerSuggested = false, primaryLabel = Sign in with a passkey, browserLabel = Sign in via browser, }: Props) { @@ -96,14 +91,6 @@ export default function AuthLoginPasskeyActions({ {browserLabel} ) : null} - {onPasswordManagerLogin ? ( - - ) : null}
); } diff --git a/fluxer_app/src/features/auth/hooks/useLoginFlow.ts b/fluxer_app/src/features/auth/hooks/useLoginFlow.ts index c239ce269..63883332d 100644 --- a/fluxer_app/src/features/auth/hooks/useLoginFlow.ts +++ b/fluxer_app/src/features/auth/hooks/useLoginFlow.ts @@ -3,6 +3,13 @@ import {showBrowserLoginHandoffModal} from '@app/features/auth/flow/BrowserLoginHandoffModal'; import {useAuthForm} from '@app/features/auth/hooks/useAuthForm'; import {CaptchaCancelledError} from '@app/features/auth/hooks/useCaptcha'; +import { + isPasskeyCeremonyDismissed, + runPasskeyBridgeNativeLogin, + startPasskeyBridgePageLogin, +} from '@app/features/auth/passkey_migration/PasskeyLegacyCeremony'; +import {readPasskeyLoginRoute, writePasskeyLoginRoute} from '@app/features/auth/passkey_migration/PasskeyLoginRoute'; +import {isPasskeyMigrationOrigin, rpIdMatchesPage} from '@app/features/auth/passkey_migration/PasskeyMigrationOrigin'; import { authenticateMfaWithWebAuthn, authenticateWithWebAuthn, @@ -15,19 +22,13 @@ import { loginWithMfaCode, loginWithPassword, type MfaChallenge, + toLoginSuccessPayload, } from '@app/features/auth/state/AuthFlow'; -import { - describePasskeyBridgeFailure, - runPasskeyViaBridge, - shouldSuggestPasskeyBridge, -} from '@app/features/auth/utils/PasskeyBridge'; import * as WebAuthnUtils from '@app/features/auth/utils/WebAuthnUtils'; import * as RouterUtils from '@app/features/navigation/utils/RouterUtils'; +import {Platform} from '@app/features/platform/types/Platform'; import {Logger} from '@app/features/platform/utils/AppLogger'; -import * as ToastCommands from '@app/features/ui/commands/ToastCommands'; import {isDesktop} from '@app/features/ui/utils/NativeUtils'; -import {useLingui} from '@lingui/react/macro'; -import type {AuthenticationResponseJSON, PublicKeyCredentialRequestOptionsJSON} from '@simplewebauthn/browser'; import {useCallback, useMemo, useRef, useState} from 'react'; const logger = Logger.create('useLoginFlow'); @@ -57,6 +58,20 @@ export function useLoginCompletion(mode: LoginCompletionMode) { return {completeLogin}; } +type LegacyPasskeyLoginOutcome = LoginSuccessPayload | 'cancelled' | 'navigating'; + +async function runLegacyPasskeyLogin(mfa: MfaChallenge | null): Promise { + if (!Platform.isElectron) { + await startPasskeyBridgePageLogin(mfa, `${window.location.pathname}${window.location.search}`); + return 'navigating'; + } + const result = + mfa === null + ? await runPasskeyBridgeNativeLogin('login') + : await runPasskeyBridgeNativeLogin('login_mfa', mfa.ticket); + return result.status === 'completed' ? toLoginSuccessPayload(result) : 'cancelled'; +} + const handleLoginOutcome = async ( result: LoginResult, onLoginSuccess?: (payload: LoginSuccessPayload) => Promise | void, @@ -95,9 +110,7 @@ export function useLoginFormController({ onRequireMfa, onRequireIpAuthorization, }: LoginFormControllerOptions) { - const {i18n} = useLingui(); const [isPasskeyLoading, setIsPasskeyLoading] = useState(false); - const [passkeyBridgeSuggested, setPasskeyBridgeSuggested] = useState(false); const {form, isLoading, fieldErrors, error} = useAuthForm({ initialValues: {email: '', password: ''}, onSubmit: async (values) => { @@ -119,69 +132,63 @@ export function useLoginFormController({ } }); }, [onLoginSuccess, redirectPath]); - const completePasskeyLogin = useCallback( - async (options: PublicKeyCredentialRequestOptionsJSON, credential: AuthenticationResponseJSON) => { - const response = await authenticateWithWebAuthn({ - response: credential, - challenge: options.challenge, - inviteCode, - }); - await onLoginSuccess?.(response); + const handlePasskeyLogin = useCallback(async () => { + setIsPasskeyLoading(true); + const migrationOrigin = isPasskeyMigrationOrigin(); + let navigating = false; + try { + let outcome: LegacyPasskeyLoginOutcome | null = null; + if (!migrationOrigin || readPasskeyLoginRoute() === 'native') { + await WebAuthnUtils.assertWebAuthnSupported(); + const options = await getWebAuthnAuthenticationOptions(); + const credential = await WebAuthnUtils.performAuthentication(options).catch((error: unknown) => { + if (migrationOrigin && isPasskeyCeremonyDismissed(error)) { + return null; + } + throw error; + }); + if (credential !== null) { + outcome = await authenticateWithWebAuthn({ + response: credential, + challenge: options.challenge, + inviteCode, + }); + } + } + if (outcome === null) { + writePasskeyLoginRoute('legacy'); + outcome = await runLegacyPasskeyLogin(null).catch((error: unknown) => { + writePasskeyLoginRoute('native'); + throw error; + }); + if (outcome === 'cancelled') { + writePasskeyLoginRoute('native'); + } + } + navigating = outcome === 'navigating'; + if (typeof outcome === 'string') { + return; + } + await onLoginSuccess?.(outcome); if (redirectPath) { RouterUtils.replaceWith(redirectPath); } - }, - [inviteCode, onLoginSuccess, redirectPath], - ); - const handlePasskeyLogin = useCallback(async () => { - setIsPasskeyLoading(true); - try { - await WebAuthnUtils.assertWebAuthnSupported(); - const options = await getWebAuthnAuthenticationOptions(); - const credential = await WebAuthnUtils.performAuthentication(options); - await completePasskeyLogin(options, credential); } catch (err) { if (err instanceof CaptchaCancelledError) { return; } logger.error('Passkey login failed', err); - if (shouldSuggestPasskeyBridge(err)) { - setPasskeyBridgeSuggested(true); - return; - } - if (err instanceof WebAuthnUtils.PasskeyDomainUnsupportedError) { - ToastCommands.error(i18n._(WebAuthnUtils.PASSKEY_DOMAIN_UNSUPPORTED_DESCRIPTOR)); - return; - } const userCancelled = err instanceof DOMException && (err.name === 'NotAllowedError' || err.name === 'AbortError'); if (isDesktop() && !userCancelled) { handleDesktopPasskeyHandoff(); } } finally { - setIsPasskeyLoading(false); - } - }, [completePasskeyLogin, handleDesktopPasskeyHandoff, i18n]); - const handlePasskeyBridgeLogin = useCallback(() => { - const options = getWebAuthnAuthenticationOptions(); - const credential = runPasskeyViaBridge('authenticate', options); - setIsPasskeyLoading(true); - Promise.all([options, credential]) - .then(([resolvedOptions, resolvedCredential]) => completePasskeyLogin(resolvedOptions, resolvedCredential)) - .catch((err: unknown) => { - if (err instanceof CaptchaCancelledError) { - return; - } - logger.error('Passkey login in the pop-up window failed', err); - const descriptor = describePasskeyBridgeFailure(err); - if (descriptor) { - ToastCommands.error(i18n._(descriptor)); - } - }) - .finally(() => { + if (!navigating) { setIsPasskeyLoading(false); - }); - }, [completePasskeyLogin, i18n]); + } + } + }, [inviteCode, onLoginSuccess, redirectPath, handleDesktopPasskeyHandoff]); return { form, isLoading, @@ -189,8 +196,6 @@ export function useLoginFormController({ error, handlePasskeyLogin, handlePasskeyBrowserLogin: handleDesktopPasskeyHandoff, - handlePasskeyBridgeLogin, - passkeyBridgeSuggested, isPasskeyLoading, }; } @@ -207,9 +212,8 @@ interface MfaControllerOptions { } export function useMfaController({ticket, methods, inviteCode, onLoginSuccess}: MfaControllerOptions) { - const {i18n} = useLingui(); const [isWebAuthnLoading, setIsWebAuthnLoading] = useState(false); - const [passkeyBridgeSuggested, setPasskeyBridgeSuggested] = useState(false); + const preferLegacyRef = useRef(false); const {form, isLoading, fieldErrors} = useAuthForm({ initialValues: {code: ''}, onSubmit: async (values) => { @@ -227,54 +231,51 @@ export function useMfaController({ticket, methods, inviteCode, onLoginSuccess}: firstFieldName: 'code', redirectPath: undefined, }); - const completeWebAuthnMfa = useCallback( - async (options: PublicKeyCredentialRequestOptionsJSON, credential: AuthenticationResponseJSON) => { - const response = await authenticateMfaWithWebAuthn({ - response: credential, - challenge: options.challenge, - ticket, - inviteCode, - }); - await onLoginSuccess?.(response); - }, - [inviteCode, onLoginSuccess, ticket], - ); const handleWebAuthn = useCallback(async () => { setIsWebAuthnLoading(true); + let navigating = false; try { const options = await getWebAuthnMfaOptions(ticket); - const credential = await WebAuthnUtils.performAuthentication(options); - await completeWebAuthnMfa(options, credential); + const migrationOrigin = isPasskeyMigrationOrigin(); + const runsOnPage = + !migrationOrigin || (!preferLegacyRef.current && (options.rpId === undefined || rpIdMatchesPage(options.rpId))); + let response: LoginSuccessPayload; + if (runsOnPage) { + const credential = await WebAuthnUtils.performAuthentication(options).catch((error: unknown) => { + if (migrationOrigin && isPasskeyCeremonyDismissed(error)) { + preferLegacyRef.current = true; + } + throw error; + }); + response = await authenticateMfaWithWebAuthn({ + response: credential, + challenge: options.challenge, + ticket, + inviteCode, + }); + } else { + const outcome = await runLegacyPasskeyLogin({ticket, ...methods}).catch((error: unknown) => { + preferLegacyRef.current = false; + throw error; + }); + navigating = outcome === 'navigating'; + if (outcome === 'cancelled') { + preferLegacyRef.current = false; + } + if (typeof outcome === 'string') { + return; + } + response = outcome; + } + await onLoginSuccess?.(response); } catch (error) { logger.error('WebAuthn MFA failed', error); - if (shouldSuggestPasskeyBridge(error)) { - setPasskeyBridgeSuggested(true); - return; - } - if (error instanceof WebAuthnUtils.PasskeyDomainUnsupportedError) { - ToastCommands.error(i18n._(WebAuthnUtils.PASSKEY_DOMAIN_UNSUPPORTED_DESCRIPTOR)); - } } finally { - setIsWebAuthnLoading(false); - } - }, [completeWebAuthnMfa, ticket, i18n]); - const handlePasskeyBridge = useCallback(() => { - const options = getWebAuthnMfaOptions(ticket); - const credential = runPasskeyViaBridge('authenticate', options); - setIsWebAuthnLoading(true); - Promise.all([options, credential]) - .then(([resolvedOptions, resolvedCredential]) => completeWebAuthnMfa(resolvedOptions, resolvedCredential)) - .catch((error: unknown) => { - logger.error('WebAuthn MFA in the pop-up window failed', error); - const descriptor = describePasskeyBridgeFailure(error); - if (descriptor) { - ToastCommands.error(i18n._(descriptor)); - } - }) - .finally(() => { + if (!navigating) { setIsWebAuthnLoading(false); - }); - }, [completeWebAuthnMfa, ticket, i18n]); + } + } + }, [inviteCode, methods, onLoginSuccess, ticket]); const supports = useMemo( () => ({totp: methods.totp, webauthn: methods.webauthn, backupCodes: methods.backupCodes}), [methods.totp, methods.webauthn, methods.backupCodes], @@ -284,8 +285,6 @@ export function useMfaController({ticket, methods, inviteCode, onLoginSuccess}: isLoading, fieldErrors, handleWebAuthn, - handlePasskeyBridge, - passkeyBridgeSuggested, isWebAuthnLoading, supports, }; diff --git a/fluxer_app/src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx b/fluxer_app/src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx deleted file mode 100644 index 4f43d7f98..000000000 --- a/fluxer_app/src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx +++ /dev/null @@ -1,115 +0,0 @@ -// SPDX-License-Identifier: AGPL-3.0-or-later - -import styles from '@app/features/app/components/ErrorFallback.module.css'; -import {PRODUCT_NAME} from '@app/features/app/config/I18nDisplayConstants'; -import { - type PasskeyBridgeSession, - type PasskeyBridgeViewState, - startPasskeyBridgeSession, -} from '@app/features/auth/passkey_bridge/PasskeyBridgeSession'; -import {CONTINUE_DESCRIPTOR} from '@app/features/i18n/utils/CommonMessageDescriptors'; -import {Button} from '@app/features/ui/button/Button'; -import {FluxerIcon} from '@app/features/ui/components/icons/FluxerIcon'; -import {msg} from '@lingui/core/macro'; -import {useLingui} from '@lingui/react/macro'; -import type React from 'react'; -import {useCallback, useEffect, useRef, useState} from 'react'; - -const USE_YOUR_PASSKEY_DESCRIPTOR = msg({ - message: 'Use your passkey', - comment: 'Heading of the small pop-up window that runs a passkey prompt for the new web address.', -}); -const CONTINUE_TO_SIGN_IN_DESCRIPTOR = msg({ - message: 'Continue with your passkey to sign in to {host}', - comment: - 'Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com.', -}); -const CONTINUE_TO_CREATE_DESCRIPTOR = msg({ - message: 'Continue to create a passkey for {host}', - comment: 'Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com.', -}); -const CLOSE_WINDOW_DESCRIPTOR = msg({ - message: 'Close window', - comment: 'Button in the passkey pop-up window that closes it after an error.', -}); -const BRIDGE_UNAVAILABLE_DESCRIPTOR = msg({ - message: 'Open this window from {productName} to use your passkey.', - comment: 'Error in the passkey pop-up window when someone opens its address directly. productName is the app name.', -}); -const BRIDGE_REJECTED_DESCRIPTOR = msg({ - message: 'This passkey request could not be verified. Close this window and try again.', - comment: 'Error in the passkey pop-up window when the request it received is not valid.', -}); -const BRIDGE_TIMED_OUT_DESCRIPTOR = msg({ - message: 'This passkey request timed out. Close this window and try again.', - comment: 'Error in the passkey pop-up window after five minutes without finishing.', -}); - -interface PasskeyBridgeScreenProps { - openerOrigin: string; -} - -export const PasskeyBridgeScreen: React.FC = ({openerOrigin}) => { - const {i18n} = useLingui(); - const [state, setState] = useState({status: 'waiting'}); - const sessionRef = useRef(null); - useEffect(() => { - const session = startPasskeyBridgeSession(openerOrigin, setState); - sessionRef.current = session; - return () => { - session.dispose(); - sessionRef.current = null; - }; - }, [openerOrigin]); - const handleContinue = useCallback(() => { - sessionRef.current?.continueCeremony(); - }, []); - const handleClose = useCallback(() => { - window.close(); - }, []); - const host = new URL(openerOrigin).host; - const failure = - state.status === 'unavailable' - ? i18n._(BRIDGE_UNAVAILABLE_DESCRIPTOR, {productName: PRODUCT_NAME}) - : state.status === 'rejected' - ? i18n._(BRIDGE_REJECTED_DESCRIPTOR) - : state.status === 'timed_out' - ? i18n._(BRIDGE_TIMED_OUT_DESCRIPTOR) - : null; - const kind = state.status === 'ready' || state.status === 'running' ? state.kind : 'authenticate'; - return ( -
- -
-

- {i18n._(USE_YOUR_PASSKEY_DESCRIPTOR)} -

-

- {failure ?? - i18n._(kind === 'register' ? CONTINUE_TO_CREATE_DESCRIPTOR : CONTINUE_TO_SIGN_IN_DESCRIPTOR, {host})} -

-
-
- {failure === null ? ( - - ) : state.status !== 'unavailable' ? ( - - ) : null} -
-
- ); -}; diff --git a/fluxer_app/src/features/auth/passkey_bridge/PasskeyBridgeSession.ts b/fluxer_app/src/features/auth/passkey_bridge/PasskeyBridgeSession.ts deleted file mode 100644 index 0883abbcb..000000000 --- a/fluxer_app/src/features/auth/passkey_bridge/PasskeyBridgeSession.ts +++ /dev/null @@ -1,125 +0,0 @@ -// SPDX-License-Identifier: AGPL-3.0-or-later - -import { - PASSKEY_BRIDGE_READY_TYPE, - PASSKEY_BRIDGE_RESULT_TYPE, - PASSKEY_BRIDGE_TIMEOUT_MS, - PASSKEY_BRIDGE_VERSION, - type PasskeyBridgeKind, - type PasskeyBridgeRequest, - type PasskeyBridgeResponseMap, - type PasskeyBridgeResult, - parsePasskeyBridgeRequest, - readPasskeyBridgeRequestId, - toPasskeyBridgeErrorPayload, -} from '@app/features/auth/utils/PasskeyBridgeProtocol'; -import {startAuthentication, startRegistration} from '@simplewebauthn/browser'; - -export type PasskeyBridgeViewState = - | {status: 'unavailable'} - | {status: 'waiting'} - | {status: 'ready'; kind: PasskeyBridgeKind} - | {status: 'running'; kind: PasskeyBridgeKind} - | {status: 'rejected'} - | {status: 'timed_out'}; - -export interface PasskeyBridgeSession { - continueCeremony(): void; - dispose(): void; -} - -function runCeremony(request: PasskeyBridgeRequest): Promise { - if (request.kind === 'authenticate') { - return startAuthentication({optionsJSON: request.options}); - } - return startRegistration({optionsJSON: request.options}); -} - -function failureResult(id: string, error: unknown): PasskeyBridgeResult { - return { - type: PASSKEY_BRIDGE_RESULT_TYPE, - v: PASSKEY_BRIDGE_VERSION, - id, - ok: false, - error: toPasskeyBridgeErrorPayload(error), - }; -} - -export function startPasskeyBridgeSession( - openerOrigin: string, - onStateChange: (state: PasskeyBridgeViewState) => void, -): PasskeyBridgeSession { - const opener = window.opener as Window | null; - if (opener === null || opener === window) { - onStateChange({status: 'unavailable'}); - return {continueCeremony() {}, dispose() {}}; - } - let request: PasskeyBridgeRequest | null = null; - let running = false; - let finished = false; - const post = (message: unknown) => { - opener.postMessage(message, openerOrigin); - }; - const finish = (result: PasskeyBridgeResult) => { - finished = true; - window.clearTimeout(timeout); - post(result); - window.close(); - }; - const handleMessage = (event: MessageEvent) => { - if (event.origin !== openerOrigin || event.source !== opener) { - return; - } - window.removeEventListener('message', handleMessage); - const parsed = parsePasskeyBridgeRequest(event.data); - if (parsed === null) { - finished = true; - window.clearTimeout(timeout); - const id = readPasskeyBridgeRequestId(event.data); - if (id !== null) { - post(failureResult(id, new DOMException('The passkey request was rejected', 'SecurityError'))); - } - onStateChange({status: 'rejected'}); - return; - } - request = parsed; - onStateChange({status: 'ready', kind: parsed.kind}); - }; - const timeout = window.setTimeout(() => { - if (running || finished) { - return; - } - finished = true; - window.removeEventListener('message', handleMessage); - if (request !== null) { - post(failureResult(request.id, new DOMException('The passkey window timed out', 'TimeoutError'))); - request = null; - } - onStateChange({status: 'timed_out'}); - }, PASSKEY_BRIDGE_TIMEOUT_MS); - window.addEventListener('message', handleMessage); - onStateChange({status: 'waiting'}); - post({type: PASSKEY_BRIDGE_READY_TYPE, v: PASSKEY_BRIDGE_VERSION}); - return { - continueCeremony() { - const current = request; - if (current === null || running || finished) { - return; - } - running = true; - onStateChange({status: 'running', kind: current.kind}); - runCeremony(current).then( - (response) => { - finish({type: PASSKEY_BRIDGE_RESULT_TYPE, v: PASSKEY_BRIDGE_VERSION, id: current.id, ok: true, response}); - }, - (error: unknown) => { - finish(failureResult(current.id, error)); - }, - ); - }, - dispose() { - window.removeEventListener('message', handleMessage); - window.clearTimeout(timeout); - }, - }; -} diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyBridgePage.tsx b/fluxer_app/src/features/auth/passkey_migration/PasskeyBridgePage.tsx new file mode 100644 index 000000000..d3e4a48b4 --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyBridgePage.tsx @@ -0,0 +1,278 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import styles from '@app/features/app/components/ErrorFallback.module.css'; +import {PRODUCT_NAME} from '@app/features/app/config/I18nDisplayConstants'; +import {Endpoints} from '@app/features/app/constants/Endpoints'; +import type {DomainMigrationSide} from '@app/features/app/domain_migration/DomainMigrationCore'; +import { + readPasskeyBridgePageLoginReturnPath, + readPasskeyBridgeReturn, +} from '@app/features/auth/passkey_migration/PasskeyBridgeReturn'; +import { + CANCEL_DESCRIPTOR, + CONTINUE_DESCRIPTOR, + TRY_AGAIN_DESCRIPTOR, +} from '@app/features/i18n/utils/CommonMessageDescriptors'; +import {Button} from '@app/features/ui/button/Button'; +import {FluxerIcon} from '@app/features/ui/components/icons/FluxerIcon'; +import {PASSKEY_BRIDGE_CHANNEL} from '@fluxer/constants/src/PasskeyConstants'; +import type {PasskeyBridgeFinishResponse} from '@fluxer/schema/src/domains/auth/PasskeyBridgeSchemas'; +import {msg} from '@lingui/core/macro'; +import {useLingui} from '@lingui/react/macro'; +import {type PublicKeyCredentialRequestOptionsJSON, startAuthentication} from '@simplewebauthn/browser'; +import type React from 'react'; +import {useCallback, useEffect, useState} from 'react'; + +const CEREMONY_ID_PATTERN = /^[A-Za-z0-9_-]{43}$/u; + +const USE_YOUR_PASSKEY_DESCRIPTOR = msg({ + message: 'Use your passkey', + comment: 'Heading of the page that asks the user to confirm with their passkey.', +}); +const PRESS_CONTINUE_DESCRIPTOR = msg({ + message: 'Press Continue to use your passkey.', + comment: 'Body of the page that asks the user to confirm with their passkey. Continue is the button label.', +}); +const THAT_DIDN_T_WORK_DESCRIPTOR = msg({ + message: "That didn't work. Try again or cancel.", + comment: 'Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain.', +}); +const REQUEST_EXPIRED_DESCRIPTOR = msg({ + message: 'This request has expired. Go back and try again.', + comment: 'Body of the passkey page when the passkey request is no longer valid. Keep plain.', +}); +const BACK_TO_PRODUCT_DESCRIPTOR = msg({ + message: 'Back to {productName}', + comment: 'Button on the expired passkey page that returns to the app. productName is the app name.', +}); +const YOU_CAN_CLOSE_THIS_TAB_DESCRIPTOR = msg({ + message: 'You can close this tab', + comment: 'Heading of the page shown after a passkey confirmation finished in a separate tab.', +}); +const GO_BACK_TO_CONTINUE_DESCRIPTOR = msg({ + message: 'Go back to {productName} to continue.', + comment: + 'Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name.', +}); + +type LegacyBridgeState = + | {status: 'loading'} + | {status: 'ready'; options: PublicKeyCredentialRequestOptionsJSON} + | {status: 'running'} + | {status: 'failed'} + | {status: 'expired'}; + +class PasskeyBridgeExpiredError extends Error { + constructor() { + super('Passkey bridge ceremony is unknown or expired'); + this.name = 'PasskeyBridgeExpiredError'; + } +} + +async function postBridge(path: string, body?: unknown): Promise { + const response = await fetch(`${window.location.origin}/api/v1${path}`, { + method: 'POST', + credentials: 'omit', + ...(body === undefined ? {} : {headers: {'Content-Type': 'application/json'}, body: JSON.stringify(body)}), + }); + if (response.status === 404) { + throw new PasskeyBridgeExpiredError(); + } + if (!response.ok) { + throw new Error(`Passkey bridge request failed with status ${response.status}`); + } + return (await response.json()) as T; +} + +function leave(finish: PasskeyBridgeFinishResponse): void { + if (finish.return_url === null) { + throw new Error('Passkey bridge finished without a return address'); + } + window.location.replace(finish.return_url); +} + +const isDismissed = (error: unknown): boolean => + error instanceof Error && (error.name === 'NotAllowedError' || error.name === 'AbortError'); + +interface PasskeyBridgePageProps { + side: DomainMigrationSide; + hash: string; + opensInOwnTab: boolean; +} + +const LegacyPasskeyBridgePage: React.FC = ({side, hash, opensInOwnTab}) => { + const {i18n} = useLingui(); + const ceremonyId = CEREMONY_ID_PATTERN.test(hash.slice(1)) ? hash.slice(1) : null; + const [state, setState] = useState(() => + ceremonyId === null ? {status: 'expired'} : {status: 'loading'}, + ); + const fail = useCallback((error: unknown) => { + setState(error instanceof PasskeyBridgeExpiredError ? {status: 'expired'} : {status: 'failed'}); + }, []); + const loadOptions = useCallback(() => { + if (ceremonyId === null) { + return; + } + setState({status: 'loading'}); + postBridge<{options: PublicKeyCredentialRequestOptionsJSON}>(Endpoints.AUTH_PASSKEY_BRIDGE_OPTIONS(ceremonyId)) + .then((response) => { + setState({status: 'ready', options: response.options}); + }) + .catch(fail); + }, [ceremonyId, fail]); + useEffect(loadOptions, [loadOptions]); + const cancel = useCallback(() => { + if (ceremonyId === null) { + return; + } + setState({status: 'running'}); + postBridge(Endpoints.AUTH_PASSKEY_BRIDGE_CANCEL(ceremonyId)) + .then(leave) + .catch(() => { + setState({status: 'expired'}); + }); + }, [ceremonyId]); + const handleContinue = useCallback(() => { + if (ceremonyId === null || state.status !== 'ready') { + return; + } + setState({status: 'running'}); + startAuthentication({optionsJSON: state.options}).then( + (response) => + postBridge(Endpoints.AUTH_PASSKEY_BRIDGE_COMPLETE(ceremonyId), {response}) + .then(leave) + .catch((error: unknown) => { + if (opensInOwnTab || error instanceof PasskeyBridgeExpiredError) { + fail(error); + return; + } + cancel(); + }), + (error: unknown) => { + if (!opensInOwnTab && isDismissed(error)) { + cancel(); + return; + } + setState({status: 'failed'}); + }, + ); + }, [cancel, ceremonyId, fail, opensInOwnTab, state]); + const handleBack = useCallback(() => { + window.close(); + window.location.replace(`${side.target}/`); + }, [side.target]); + const expired = state.status === 'expired'; + const failed = state.status === 'failed'; + return ( +
+ +
+

+ {i18n._(USE_YOUR_PASSKEY_DESCRIPTOR)} +

+

+ {i18n._( + expired ? REQUEST_EXPIRED_DESCRIPTOR : failed ? THAT_DIDN_T_WORK_DESCRIPTOR : PRESS_CONTINUE_DESCRIPTOR, + )} +

+
+
+ {expired ? ( + + ) : failed ? ( + <> + + + + ) : ( + <> + + + + )} +
+
+ ); +}; + +const TargetPasskeyBridgePage: React.FC<{hash: string}> = ({hash}) => { + const {i18n} = useLingui(); + const [bridgeReturn] = useState(() => readPasskeyBridgeReturn(hash)); + const [loginReturnPath] = useState(() => + bridgeReturn === null ? null : readPasskeyBridgePageLoginReturnPath(bridgeReturn.ceremonyId), + ); + useEffect(() => { + if (loginReturnPath !== null) { + window.location.replace(`${window.location.origin}${loginReturnPath}${hash}`); + return; + } + if (bridgeReturn !== null) { + const channel = new BroadcastChannel(PASSKEY_BRIDGE_CHANNEL); + channel.postMessage({ceremony_id: bridgeReturn.ceremonyId, completion_code: bridgeReturn.completionCode}); + channel.close(); + } + window.close(); + }, [bridgeReturn, hash, loginReturnPath]); + if (loginReturnPath !== null) { + return null; + } + return ( +
+ +
+

+ {i18n._(YOU_CAN_CLOSE_THIS_TAB_DESCRIPTOR)} +

+

+ {i18n._(GO_BACK_TO_CONTINUE_DESCRIPTOR, {productName: PRODUCT_NAME})} +

+
+
+ ); +}; + +export const PasskeyBridgePage: React.FC = ({side, hash, opensInOwnTab}) => + side.role === 'source' ? ( + + ) : ( + + ); diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyBridgeReturn.test.ts b/fluxer_app/src/features/auth/passkey_migration/PasskeyBridgeReturn.test.ts new file mode 100644 index 000000000..eac40e281 --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyBridgeReturn.test.ts @@ -0,0 +1,27 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {readPasskeyBridgeReturn} from '@app/features/auth/passkey_migration/PasskeyBridgeReturn'; +import {describe, expect, it} from 'vitest'; + +const CEREMONY_ID = 'a'.repeat(43); +const COMPLETION_CODE = 'B_-'.repeat(14).concat('c'); + +describe('readPasskeyBridgeReturn', () => { + it('reads the ceremony id and completion code from the fragment', () => { + expect(readPasskeyBridgeReturn(`#passkey-bridge=${CEREMONY_ID}.${COMPLETION_CODE}`)).toEqual({ + ceremonyId: CEREMONY_ID, + completionCode: COMPLETION_CODE, + }); + }); + + it.each([ + ['an empty fragment', ''], + ['another fragment', '#section'], + ['a missing completion code', `#passkey-bridge=${CEREMONY_ID}`], + ['an extra segment', `#passkey-bridge=${CEREMONY_ID}.${COMPLETION_CODE}.${COMPLETION_CODE}`], + ['a short ceremony id', `#passkey-bridge=abc.${COMPLETION_CODE}`], + ['characters outside base64url', `#passkey-bridge=${CEREMONY_ID}.${'+'.repeat(43)}`], + ])('rejects %s', (_label, hash) => { + expect(readPasskeyBridgeReturn(hash)).toBeNull(); + }); +}); diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyBridgeReturn.ts b/fluxer_app/src/features/auth/passkey_migration/PasskeyBridgeReturn.ts new file mode 100644 index 000000000..b7cc2f70f --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyBridgeReturn.ts @@ -0,0 +1,136 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import type {MfaChallenge} from '@app/features/auth/state/AuthFlow'; +import {getProtectedSessionStorage} from '@app/features/platform/state/ProtectedWebStorage'; +import {PASSKEY_BRIDGE_RETURN_FRAGMENT_KEY} from '@fluxer/constants/src/PasskeyConstants'; +import type {PasskeyBridgeLoginStartRequest} from '@fluxer/schema/src/domains/auth/PasskeyBridgeSchemas'; + +const BRIDGE_TOKEN_PATTERN = /^[A-Za-z0-9_-]{43}$/u; +const STORED_LOGIN_KEY_PREFIX = 'fluxer:passkey-bridge:'; +const STORED_LOGIN_MAX_AGE_MS = 10 * 60 * 1000; + +export type PasskeyBridgeLoginPurpose = PasskeyBridgeLoginStartRequest['purpose']; + +interface StoredPasskeyBridgePageLogin { + nonce: string; + purpose: PasskeyBridgeLoginPurpose; + return_path: string; + mfa: MfaChallenge | null; + created_at: number; +} + +export interface PasskeyBridgePageLogin { + nonce: string; + mfa: MfaChallenge | null; +} + +export interface PasskeyBridgeReturn { + ceremonyId: string; + completionCode: string; +} + +export function readPasskeyBridgeReturn(hash: string): PasskeyBridgeReturn | null { + const value = new URLSearchParams(hash.startsWith('#') ? hash.slice(1) : hash).get( + PASSKEY_BRIDGE_RETURN_FRAGMENT_KEY, + ); + const parts = value?.split('.') ?? []; + if (parts.length !== 2 || !parts.every((part) => BRIDGE_TOKEN_PATTERN.test(part))) { + return null; + } + return {ceremonyId: parts[0], completionCode: parts[1]}; +} + +function parseMfaChallenge(value: unknown): MfaChallenge | null { + const mfa = value as Partial | null; + if ( + typeof mfa?.ticket !== 'string' || + typeof mfa.totp !== 'boolean' || + typeof mfa.webauthn !== 'boolean' || + typeof mfa.backupCodes !== 'boolean' + ) { + return null; + } + return {ticket: mfa.ticket, totp: mfa.totp, webauthn: mfa.webauthn, backupCodes: mfa.backupCodes}; +} + +function parseStoredLogin(raw: string | null): StoredPasskeyBridgePageLogin | null { + if (!raw) { + return null; + } + try { + const value = JSON.parse(raw) as Partial | null; + if ( + typeof value?.nonce !== 'string' || + (value.purpose !== 'login' && value.purpose !== 'login_mfa') || + typeof value.return_path !== 'string' || + !value.return_path.startsWith('/') || + typeof value.created_at !== 'number' + ) { + return null; + } + const mfa = parseMfaChallenge(value.mfa); + if ((value.purpose === 'login_mfa') !== (mfa !== null)) { + return null; + } + return { + nonce: value.nonce, + purpose: value.purpose, + return_path: value.return_path, + mfa, + created_at: value.created_at, + }; + } catch { + return null; + } +} + +function readStoredLogin(ceremonyId: string): StoredPasskeyBridgePageLogin | null { + try { + return parseStoredLogin(getProtectedSessionStorage()?.getItem(`${STORED_LOGIN_KEY_PREFIX}${ceremonyId}`) ?? null); + } catch { + return null; + } +} + +export function storePasskeyBridgePageLogin(ceremonyId: string, login: StoredPasskeyBridgePageLogin): void { + const storage = getProtectedSessionStorage(); + if (storage === null) { + throw new Error('Session storage is unavailable'); + } + storage.setItem(`${STORED_LOGIN_KEY_PREFIX}${ceremonyId}`, JSON.stringify(login)); +} + +export function readPasskeyBridgePageLoginReturnPath(ceremonyId: string): string | null { + return readStoredLogin(ceremonyId)?.return_path ?? null; +} + +export function takePasskeyBridgePageLogin(ceremonyId: string): PasskeyBridgePageLogin | null { + const stored = readStoredLogin(ceremonyId); + try { + getProtectedSessionStorage()?.removeItem(`${STORED_LOGIN_KEY_PREFIX}${ceremonyId}`); + } catch {} + return stored === null ? null : {nonce: stored.nonce, mfa: stored.mfa}; +} + +export function prunePasskeyBridgePageLogins(now: number): void { + try { + const storage = getProtectedSessionStorage(); + if (storage === null) { + return; + } + const expired: Array = []; + for (let index = 0; index < storage.length; index++) { + const key = storage.key(index); + if (key === null || !key.startsWith(STORED_LOGIN_KEY_PREFIX)) { + continue; + } + const stored = parseStoredLogin(storage.getItem(key)); + if (stored === null || now - stored.created_at > STORED_LOGIN_MAX_AGE_MS) { + expired.push(key); + } + } + for (const key of expired) { + storage.removeItem(key); + } + } catch {} +} diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyLegacyCeremony.ts b/fluxer_app/src/features/auth/passkey_migration/PasskeyLegacyCeremony.ts new file mode 100644 index 000000000..74221b050 --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyLegacyCeremony.ts @@ -0,0 +1,243 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {Endpoints} from '@app/features/app/constants/Endpoints'; +import {randomBase64Url, sha256Hex} from '@app/features/app/domain_migration/DomainMigrationCrypto'; +import { + type PasskeyBridgeLoginPurpose, + type PasskeyBridgePageLogin, + storePasskeyBridgePageLogin, +} from '@app/features/auth/passkey_migration/PasskeyBridgeReturn'; +import type {MfaChallenge} from '@app/features/auth/state/AuthFlow'; +import * as WebAuthnUtils from '@app/features/auth/utils/WebAuthnUtils'; +import {http} from '@app/features/platform/transport/RestTransport'; +import {HttpError} from '@app/features/platform/types/EndpointError'; +import {Platform} from '@app/features/platform/types/Platform'; +import {PASSKEY_BRIDGE_CHANNEL} from '@fluxer/constants/src/PasskeyConstants'; +import type { + PasskeyBridgeFinishResponse, + PasskeyBridgeLoginRedeemResponse, + PasskeyBridgeLoginStartRequest, + PasskeyBridgeStartResponse, + PasskeyBridgeSudoRedeemResponse, +} from '@fluxer/schema/src/domains/auth/PasskeyBridgeSchemas'; +import type {AuthenticationResponseJSON, PublicKeyCredentialRequestOptionsJSON} from '@simplewebauthn/browser'; + +const NONCE_BYTES = 32; +const LINK_CEREMONY_RESTART_MS = 9 * 60 * 1000; + +interface LegacyCeremony { + id: string; + nonce: string; +} + +async function createNonce(): Promise<{nonce: string; nonceHash: string}> { + const nonce = randomBase64Url(NONCE_BYTES); + return {nonce, nonceHash: await sha256Hex(nonce)}; +} + +export function isPasskeyCeremonyDismissed(error: unknown): boolean { + if (Platform.isElectron) { + return !(error instanceof HttpError); + } + return error instanceof Error && (error.name === 'NotAllowedError' || error.name === 'AbortError'); +} + +async function startLogin(request: PasskeyBridgeLoginStartRequest): Promise { + const response = await http.post(Endpoints.AUTH_PASSKEY_BRIDGE, {body: request}); + return response.body; +} + +async function startSudo(runner: 'page' | 'native', nonceHash: string): Promise { + const response = await http.post(Endpoints.USER_PASSKEY_BRIDGE, { + body: {runner, nonce_hash: nonceHash}, + }); + return response.body; +} + +async function redeemLogin( + ceremony: LegacyCeremony, + completionCode: string, +): Promise { + const response = await http.post( + Endpoints.AUTH_PASSKEY_BRIDGE_REDEEM(ceremony.id), + { + body: {nonce: ceremony.nonce, completion_code: completionCode}, + }, + ); + return response.body; +} + +async function redeemSudo(ceremony: LegacyCeremony, completionCode: string): Promise { + const response = await http.post(Endpoints.USER_PASSKEY_BRIDGE_REDEEM(ceremony.id), { + body: {nonce: ceremony.nonce, completion_code: completionCode}, + }); + return response.body; +} + +function requireCompletionCode(finish: PasskeyBridgeFinishResponse): string { + if (finish.completion_code === null) { + throw new Error('Passkey bridge finished without a completion code'); + } + return finish.completion_code; +} + +async function runNativeCeremony(ceremonyId: string): Promise { + const optionsResponse = await http.post<{options: PublicKeyCredentialRequestOptionsJSON}>( + Endpoints.AUTH_PASSKEY_BRIDGE_OPTIONS(ceremonyId), + ); + let credential: AuthenticationResponseJSON; + try { + credential = await WebAuthnUtils.performAuthentication(optionsResponse.body.options); + } catch (error) { + if (!isPasskeyCeremonyDismissed(error)) { + throw error; + } + const cancelled = await http.post(Endpoints.AUTH_PASSKEY_BRIDGE_CANCEL(ceremonyId)); + return requireCompletionCode(cancelled.body); + } + const completed = await http.post(Endpoints.AUTH_PASSKEY_BRIDGE_COMPLETE(ceremonyId), { + body: {response: credential}, + }); + return requireCompletionCode(completed.body); +} + +export async function startPasskeyBridgePageLogin(mfa: MfaChallenge | null, returnPath: string): Promise { + const purpose: PasskeyBridgeLoginPurpose = mfa === null ? 'login' : 'login_mfa'; + const {nonce, nonceHash} = await createNonce(); + const started = await startLogin({ + purpose, + runner: 'page', + ...(mfa === null ? {} : {ticket: mfa.ticket}), + nonce_hash: nonceHash, + }); + if (started.bridge_url === null) { + throw new Error('Passkey bridge did not return a page'); + } + storePasskeyBridgePageLogin(started.ceremony_id, { + nonce, + purpose, + return_path: returnPath, + mfa, + created_at: Date.now(), + }); + window.location.assign(started.bridge_url); +} + +export function redeemPasskeyBridgePageLogin( + ceremonyId: string, + login: PasskeyBridgePageLogin, + completionCode: string, +): Promise { + return redeemLogin({id: ceremonyId, nonce: login.nonce}, completionCode); +} + +export async function runPasskeyBridgeNativeLogin( + purpose: PasskeyBridgeLoginPurpose, + ticket?: string, +): Promise { + const {nonce, nonceHash} = await createNonce(); + const started = await startLogin({ + purpose, + runner: 'native', + ...(ticket === undefined ? {} : {ticket}), + nonce_hash: nonceHash, + }); + const completionCode = await runNativeCeremony(started.ceremony_id); + return redeemLogin({id: started.ceremony_id, nonce}, completionCode); +} + +export async function runPasskeyBridgeNativeSudo(): Promise { + const {nonce, nonceHash} = await createNonce(); + const started = await startSudo('native', nonceHash); + const completionCode = await runNativeCeremony(started.ceremony_id); + return redeemSudo({id: started.ceremony_id, nonce}, completionCode); +} + +interface PasskeyBridgeSudoLinkHandlers { + onLink(url: string | null): void; + onCompleted(sudoToken: string): void; + onError(error: unknown): void; +} + +export class PasskeyBridgeSudoLink { + private readonly channel = new BroadcastChannel(PASSKEY_BRIDGE_CHANNEL); + private ceremony: LegacyCeremony | null = null; + private restartTimer: ReturnType | null = null; + private generation = 0; + private disposed = false; + + constructor(private readonly handlers: PasskeyBridgeSudoLinkHandlers) { + this.channel.onmessage = this.handleMessage; + } + + async start(): Promise { + const generation = this.reset(); + this.handlers.onLink(null); + try { + const {nonce, nonceHash} = await createNonce(); + const started = await startSudo('page', nonceHash); + if (generation !== this.generation) { + return; + } + if (started.bridge_url === null) { + throw new Error('Passkey bridge did not return a page'); + } + this.ceremony = {id: started.ceremony_id, nonce}; + this.restartTimer = setTimeout(() => void this.start(), LINK_CEREMONY_RESTART_MS); + this.handlers.onLink(started.bridge_url); + } catch (error) { + if (generation === this.generation) { + this.handlers.onError(error); + } + } + } + + dispose(): void { + this.reset(); + this.disposed = true; + this.channel.close(); + } + + private reset(): number { + if (this.restartTimer !== null) { + clearTimeout(this.restartTimer); + this.restartTimer = null; + } + this.ceremony = null; + this.generation += 1; + return this.generation; + } + + private readonly handleMessage = (event: MessageEvent): void => { + const ceremony = this.ceremony; + const data = event.data as {ceremony_id?: unknown; completion_code?: unknown} | null; + if ( + this.disposed || + ceremony === null || + data?.ceremony_id !== ceremony.id || + typeof data.completion_code !== 'string' + ) { + return; + } + const generation = this.reset(); + redeemSudo(ceremony, data.completion_code).then( + (result) => { + if (generation !== this.generation) { + return; + } + if (result.status === 'completed') { + this.handlers.onCompleted(result.sudo_token); + return; + } + void this.start(); + }, + (error: unknown) => { + if (generation !== this.generation) { + return; + } + this.handlers.onError(error); + void this.start(); + }, + ); + }; +} diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyLoginRoute.test.ts b/fluxer_app/src/features/auth/passkey_migration/PasskeyLoginRoute.test.ts new file mode 100644 index 000000000..4e478f3a1 --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyLoginRoute.test.ts @@ -0,0 +1,29 @@ +// @vitest-environment happy-dom +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {readPasskeyLoginRoute, writePasskeyLoginRoute} from '@app/features/auth/passkey_migration/PasskeyLoginRoute'; +import {beforeEach, describe, expect, it} from 'vitest'; + +describe('PasskeyLoginRoute', () => { + beforeEach(() => { + window.localStorage.clear(); + }); + + it('defaults to the page passkey when nothing is stored', () => { + expect(readPasskeyLoginRoute()).toBe('native'); + }); + + it('remembers the previous address after it is chosen and forgets it again', () => { + writePasskeyLoginRoute('legacy'); + expect(readPasskeyLoginRoute()).toBe('legacy'); + expect(window.localStorage.getItem('fluxer:passkey-login-route')).toBe('legacy'); + writePasskeyLoginRoute('native'); + expect(readPasskeyLoginRoute()).toBe('native'); + expect(window.localStorage.getItem('fluxer:passkey-login-route')).toBeNull(); + }); + + it('ignores unknown stored values', () => { + window.localStorage.setItem('fluxer:passkey-login-route', 'something'); + expect(readPasskeyLoginRoute()).toBe('native'); + }); +}); diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyLoginRoute.ts b/fluxer_app/src/features/auth/passkey_migration/PasskeyLoginRoute.ts new file mode 100644 index 000000000..01fa79a31 --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyLoginRoute.ts @@ -0,0 +1,25 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {getProtectedLocalStorage} from '@app/features/platform/state/ProtectedWebStorage'; + +const PASSKEY_LOGIN_ROUTE_KEY = 'fluxer:passkey-login-route'; + +export type PasskeyLoginRoute = 'legacy' | 'native'; + +export function readPasskeyLoginRoute(): PasskeyLoginRoute { + try { + return getProtectedLocalStorage()?.getItem(PASSKEY_LOGIN_ROUTE_KEY) === 'legacy' ? 'legacy' : 'native'; + } catch { + return 'native'; + } +} + +export function writePasskeyLoginRoute(route: PasskeyLoginRoute): void { + try { + if (route === 'legacy') { + getProtectedLocalStorage()?.setItem(PASSKEY_LOGIN_ROUTE_KEY, route); + } else { + getProtectedLocalStorage()?.removeItem(PASSKEY_LOGIN_ROUTE_KEY); + } + } catch {} +} diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyMigration.ts b/fluxer_app/src/features/auth/passkey_migration/PasskeyMigration.ts new file mode 100644 index 000000000..6d9f822a5 --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyMigration.ts @@ -0,0 +1,73 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {Endpoints} from '@app/features/app/constants/Endpoints'; +import {readDomainMigrationDiscovery} from '@app/features/app/domain_migration/DomainMigrationBrowser'; +import {isPasskeyMigrationOrigin} from '@app/features/auth/passkey_migration/PasskeyMigrationOrigin'; +import {openPasskeyUpdateModal} from '@app/features/auth/passkey_migration/PasskeyUpdateModal'; +import {http} from '@app/features/platform/transport/RestTransport'; +import {Logger} from '@app/features/platform/utils/AppLogger'; +import Modal from '@app/features/ui/state/Modal'; +import WebAuthnCredentials from '@app/features/user/state/WebAuthnCredentials'; +import {PASSKEY_MIGRATION_RP_ID} from '@fluxer/constants/src/PasskeyConstants'; +import type {PasskeyMigrationResponse} from '@fluxer/schema/src/domains/auth/PasskeyMigrationSchemas'; +import {makeAutoObservable, runInAction, when} from 'mobx'; + +const logger = new Logger('PasskeyMigration'); + +export type PendingPasskeyMigration = NonNullable; + +class PasskeyMigration { + pending: PendingPasskeyMigration | null = null; + private checkedUserId: string | null = null; + + constructor() { + makeAutoObservable(this, {}, {autoBind: true}); + } + + async check(): Promise { + try { + const response = await http.get(Endpoints.USER_MFA_WEBAUTHN_MIGRATION); + const pending = response.body.pending; + runInAction(() => { + this.pending = pending; + }); + if (pending !== null) { + openPasskeyUpdateModal(pending); + } + } catch (error) { + logger.warn('Failed to check for a passkey to update', error); + } + } + + clear(): void { + this.pending = null; + } + + checkAfterSudo(sudoModalKey: string): void { + const requester = Modal.modals.findLast((entry) => entry.key !== sudoModalKey && !entry.isBackground); + if (requester === undefined) { + void this.check(); + return; + } + when( + () => !Modal.hasModal(requester.key), + () => void this.check(), + ); + } + + handleGatewayReady(userId: string): void { + if ( + this.checkedUserId === userId || + !isPasskeyMigrationOrigin() || + readDomainMigrationDiscovery()?.enabled !== true + ) { + return; + } + this.checkedUserId = userId; + if (WebAuthnCredentials.credentials.some((credential) => credential.rp_id !== PASSKEY_MIGRATION_RP_ID)) { + void this.check(); + } + } +} + +export default new PasskeyMigration(); diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyMigrationOrigin.test.ts b/fluxer_app/src/features/auth/passkey_migration/PasskeyMigrationOrigin.test.ts new file mode 100644 index 000000000..d6e232e39 --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyMigrationOrigin.test.ts @@ -0,0 +1,21 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {rpIdMatchesPage} from '@app/features/auth/passkey_migration/PasskeyMigrationOrigin'; +import {describe, expect, it, vi} from 'vitest'; + +vi.mock('@app/features/app/domain_migration/DomainMigrationRollout', () => ({default: {enabled: false}})); + +describe('rpIdMatchesPage', () => { + it('matches the page host and its parent domains', () => { + expect(rpIdMatchesPage('fluxer.com', 'fluxer.com')).toBe(true); + expect(rpIdMatchesPage('fluxer.com', 'canary.fluxer.com')).toBe(true); + expect(rpIdMatchesPage('fluxer.app', 'web.canary.fluxer.app')).toBe(true); + expect(rpIdMatchesPage('Fluxer.COM', 'fluxer.com')).toBe(true); + }); + + it('rejects other domains', () => { + expect(rpIdMatchesPage('fluxer.app', 'fluxer.com')).toBe(false); + expect(rpIdMatchesPage('fluxer.com', 'notfluxer.com')).toBe(false); + expect(rpIdMatchesPage('canary.fluxer.com', 'fluxer.com')).toBe(false); + }); +}); diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyMigrationOrigin.ts b/fluxer_app/src/features/auth/passkey_migration/PasskeyMigrationOrigin.ts new file mode 100644 index 000000000..4addece52 --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyMigrationOrigin.ts @@ -0,0 +1,13 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {resolveDomainMigrationSide} from '@app/features/app/domain_migration/DomainMigrationCore'; + +export function isPasskeyMigrationOrigin(): boolean { + return resolveDomainMigrationSide(window.location.origin)?.role === 'target'; +} + +export function rpIdMatchesPage(rpId: string, hostname: string = window.location.hostname): boolean { + const host = hostname.toLowerCase(); + const normalizedRpId = rpId.toLowerCase(); + return host === normalizedRpId || host.endsWith(`.${normalizedRpId}`); +} diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyUpdateModal.module.css b/fluxer_app/src/features/auth/passkey_migration/PasskeyUpdateModal.module.css new file mode 100644 index 000000000..bd76f9ca1 --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyUpdateModal.module.css @@ -0,0 +1,7 @@ +/* SPDX-License-Identifier: AGPL-3.0-or-later */ + +.error { + margin: 0; + font-size: 0.8125rem; + color: var(--accent-danger); +} diff --git a/fluxer_app/src/features/auth/passkey_migration/PasskeyUpdateModal.tsx b/fluxer_app/src/features/auth/passkey_migration/PasskeyUpdateModal.tsx new file mode 100644 index 000000000..b5782c66d --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/PasskeyUpdateModal.tsx @@ -0,0 +1,172 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import * as Modal from '@app/features/app/components/dialogs/Modal'; +import {Endpoints} from '@app/features/app/constants/Endpoints'; +import {writePasskeyLoginRoute} from '@app/features/auth/passkey_migration/PasskeyLoginRoute'; +import PasskeyMigration, {type PendingPasskeyMigration} from '@app/features/auth/passkey_migration/PasskeyMigration'; +import styles from '@app/features/auth/passkey_migration/PasskeyUpdateModal.module.css'; +import * as WebAuthnUtils from '@app/features/auth/utils/WebAuthnUtils'; +import {http} from '@app/features/platform/transport/RestTransport'; +import {Logger} from '@app/features/platform/utils/AppLogger'; +import {Button} from '@app/features/ui/button/Button'; +import * as ModalCommands from '@app/features/ui/commands/ModalCommands'; +import {modal} from '@app/features/ui/commands/ModalCommands'; +import * as ToastCommands from '@app/features/ui/commands/ToastCommands'; +import {msg} from '@lingui/core/macro'; +import {useLingui} from '@lingui/react/macro'; +import type {PublicKeyCredentialCreationOptionsJSON} from '@simplewebauthn/browser'; +import {observer} from 'mobx-react-lite'; +import {useCallback, useEffect, useState} from 'react'; + +const PASSKEY_UPDATE_MODAL_KEY = 'passkey-update-modal'; +const logger = new Logger('PasskeyUpdateModal'); + +const UPDATE_YOUR_PASSKEY_DESCRIPTOR = msg({ + message: 'Update your passkey', + comment: 'Title of the modal that asks the user to save an updated passkey after signing in with an older one.', +}); +const UPDATE_PASSKEY_BODY_DESCRIPTOR = msg({ + message: 'Your device will ask you to save an updated passkey for {name}. It replaces the old one.', + comment: + 'Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain.', +}); +const UPDATE_PASSKEY_CROSS_DEVICE_BODY_DESCRIPTOR = msg({ + message: + 'Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used.', + comment: + 'Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain.', +}); +const UPDATE_PASSKEY_DESCRIPTOR = msg({ + message: 'Update passkey', + comment: 'Primary button in the modal that saves an updated passkey.', +}); +const NOT_NOW_DESCRIPTOR = msg({ + message: 'Not now', + comment: 'Secondary button that closes the passkey update modal after an attempt failed.', +}); +const COULDN_T_UPDATE_YOUR_PASSKEY_DESCRIPTOR = msg({ + message: "Couldn't update your passkey. Try again.", + comment: 'Error shown in the passkey update modal when saving the updated passkey failed. Keep plain.', +}); +const PASSKEY_UPDATED_DESCRIPTOR = msg({ + message: 'Passkey updated', + comment: 'Toast shown after the user saved an updated passkey.', +}); + +const isAlreadyRegisteredError = (error: unknown): boolean => + error instanceof Error && error.name === 'InvalidStateError'; + +const PasskeyUpdateModal = observer(({pending}: {pending: PendingPasskeyMigration}) => { + const {i18n} = useLingui(); + const [options, setOptions] = useState(null); + const [optionsRequest, setOptionsRequest] = useState(0); + const [submitting, setSubmitting] = useState(false); + const [failed, setFailed] = useState(false); + useEffect(() => { + let current = true; + setOptions(null); + http + .post(Endpoints.USER_MFA_WEBAUTHN_MIGRATION_REGISTRATION_OPTIONS) + .then((response) => { + if (current) { + setOptions(response.body); + } + }) + .catch((error: unknown) => { + if (current) { + logger.error('Failed to get registration options for the passkey update', error); + setFailed(true); + } + }); + return () => { + current = false; + }; + }, [optionsRequest]); + const close = useCallback(() => { + PasskeyMigration.clear(); + ModalCommands.popWithKey(PASSKEY_UPDATE_MODAL_KEY); + }, []); + const handleClose = useCallback(() => { + if (failed && !submitting) { + close(); + } + }, [close, failed, submitting]); + const handleUpdate = async () => { + if (options === null) { + setOptionsRequest((request) => request + 1); + return; + } + setSubmitting(true); + try { + const credential = await WebAuthnUtils.performRegistration(options); + await http.post(Endpoints.USER_MFA_WEBAUTHN_MIGRATION, { + body: {response: credential, challenge: options.challenge}, + }); + close(); + ToastCommands.success(i18n._(PASSKEY_UPDATED_DESCRIPTOR)); + } catch (error) { + if (isAlreadyRegisteredError(error)) { + writePasskeyLoginRoute('native'); + close(); + return; + } + logger.error('Failed to update passkey', error); + setFailed(true); + setOptionsRequest((request) => request + 1); + } finally { + setSubmitting(false); + } + }; + return ( + + + + + + {i18n._( + pending.cross_device ? UPDATE_PASSKEY_CROSS_DEVICE_BODY_DESCRIPTOR : UPDATE_PASSKEY_BODY_DESCRIPTOR, + {name: pending.name}, + )} + + {failed && ( +

+ {i18n._(COULDN_T_UPDATE_YOUR_PASSKEY_DESCRIPTOR)} +

+ )} +
+
+ + {failed && ( + + )} + + +
+ ); +}); + +export function openPasskeyUpdateModal(pending: PendingPasskeyMigration): void { + ModalCommands.pushWithKey( + modal(() => ), + PASSKEY_UPDATE_MODAL_KEY, + ); +} diff --git a/fluxer_app/src/features/auth/passkey_migration/usePasskeyBridgeReturn.ts b/fluxer_app/src/features/auth/passkey_migration/usePasskeyBridgeReturn.ts new file mode 100644 index 000000000..46640009d --- /dev/null +++ b/fluxer_app/src/features/auth/passkey_migration/usePasskeyBridgeReturn.ts @@ -0,0 +1,74 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import { + prunePasskeyBridgePageLogins, + readPasskeyBridgeReturn, + takePasskeyBridgePageLogin, +} from '@app/features/auth/passkey_migration/PasskeyBridgeReturn'; +import {redeemPasskeyBridgePageLogin} from '@app/features/auth/passkey_migration/PasskeyLegacyCeremony'; +import {writePasskeyLoginRoute} from '@app/features/auth/passkey_migration/PasskeyLoginRoute'; +import {isPasskeyMigrationOrigin} from '@app/features/auth/passkey_migration/PasskeyMigrationOrigin'; +import {type LoginSuccessPayload, type MfaChallenge, toLoginSuccessPayload} from '@app/features/auth/state/AuthFlow'; +import * as RouterUtils from '@app/features/navigation/utils/RouterUtils'; +import {Logger} from '@app/features/platform/utils/AppLogger'; +import {useEffect, useRef, useState} from 'react'; + +const logger = new Logger('usePasskeyBridgeReturn'); + +interface PasskeyBridgeReturnOptions { + redirectPath?: string; + onLoginSuccess: (payload: LoginSuccessPayload) => Promise | void; + onRequireMfa: (challenge: MfaChallenge) => void; + onFailure: () => void; +} + +export function usePasskeyBridgeReturn(options: PasskeyBridgeReturnOptions): boolean { + const [isRedeeming, setIsRedeeming] = useState(false); + const handledRef = useRef(false); + const optionsRef = useRef(options); + optionsRef.current = options; + useEffect(() => { + if (handledRef.current || !isPasskeyMigrationOrigin()) { + return; + } + handledRef.current = true; + prunePasskeyBridgePageLogins(Date.now()); + const bridgeReturn = readPasskeyBridgeReturn(window.location.hash); + if (bridgeReturn === null) { + return; + } + window.history.replaceState(window.history.state, '', `${window.location.pathname}${window.location.search}`); + const login = takePasskeyBridgePageLogin(bridgeReturn.ceremonyId); + if (login === null) { + optionsRef.current.onFailure(); + return; + } + const restoreMfa = () => { + if (login.mfa !== null) { + optionsRef.current.onRequireMfa(login.mfa); + } + }; + setIsRedeeming(true); + redeemPasskeyBridgePageLogin(bridgeReturn.ceremonyId, login, bridgeReturn.completionCode) + .then(async (result) => { + if (result.status === 'cancelled') { + writePasskeyLoginRoute('native'); + restoreMfa(); + return; + } + await optionsRef.current.onLoginSuccess(toLoginSuccessPayload(result)); + if (optionsRef.current.redirectPath) { + RouterUtils.replaceWith(optionsRef.current.redirectPath); + } + }) + .catch((error: unknown) => { + logger.error('Passkey sign-in on the previous address failed', error); + restoreMfa(); + optionsRef.current.onFailure(); + }) + .finally(() => { + setIsRedeeming(false); + }); + }, []); + return isRedeeming; +} diff --git a/fluxer_app/src/features/auth/state/AuthFlow.ts b/fluxer_app/src/features/auth/state/AuthFlow.ts index 4c5ac3811..de25fb0d8 100644 --- a/fluxer_app/src/features/auth/state/AuthFlow.ts +++ b/fluxer_app/src/features/auth/state/AuthFlow.ts @@ -32,7 +32,7 @@ export type LoginResult = | {type: 'ip_authorization'; challenge: IpAuthorizationChallenge} | {type: 'suspended'; banViewToken: string}; -function toLoginSuccessPayload(response: AuthenticationCommands.AuthTokenResponse): LoginSuccessPayload { +export function toLoginSuccessPayload(response: AuthenticationCommands.AuthTokenResponse): LoginSuccessPayload { const userData = AuthenticationCommands.authResponseUserToUserData(response.user); return { token: response.token, diff --git a/fluxer_app/src/features/auth/state/SudoPrompt.tsx b/fluxer_app/src/features/auth/state/SudoPrompt.tsx index e49423275..f7d8b8e5f 100644 --- a/fluxer_app/src/features/auth/state/SudoPrompt.tsx +++ b/fluxer_app/src/features/auth/state/SudoPrompt.tsx @@ -52,7 +52,7 @@ export function isAbortError(error: unknown): boolean { return false; } -const SUDO_MODAL_KEY = 'sudo-verification-modal'; +export const SUDO_MODAL_KEY = 'sudo-verification-modal'; export interface AvailableMethods { password: boolean; diff --git a/fluxer_app/src/features/auth/utils/PasskeyBridge.ts b/fluxer_app/src/features/auth/utils/PasskeyBridge.ts deleted file mode 100644 index fd2d7b37a..000000000 --- a/fluxer_app/src/features/auth/utils/PasskeyBridge.ts +++ /dev/null @@ -1,163 +0,0 @@ -// SPDX-License-Identifier: AGPL-3.0-or-later - -import { - isPasskeyBridgeReady, - PASSKEY_BRIDGE_PATH, - PASSKEY_BRIDGE_REQUEST_TYPE, - PASSKEY_BRIDGE_TIMEOUT_MS, - PASSKEY_BRIDGE_VERSION, - type PasskeyBridgeKind, - type PasskeyBridgeOptionsMap, - type PasskeyBridgeRequest, - type PasskeyBridgeResponseMap, - parsePasskeyBridgeResult, - resolvePasskeyBridgeLegacyOrigin, -} from '@app/features/auth/utils/PasskeyBridgeProtocol'; -import {PasskeyDomainUnsupportedError} from '@app/features/auth/utils/WebAuthnUtils'; -import {Platform} from '@app/features/platform/types/Platform'; -import type {MessageDescriptor} from '@lingui/core'; -import {msg} from '@lingui/core/macro'; - -const PASSKEY_BRIDGE_POPUP_FEATURES = 'popup,width=460,height=620'; -const PASSKEY_BRIDGE_CLOSED_POLL_MS = 500; -const SUGGEST_BRIDGE_ERROR_NAMES: ReadonlySet = new Set(['NotAllowedError', 'SecurityError']); - -const PASSKEY_BRIDGE_POPUP_BLOCKED_DESCRIPTOR = msg({ - message: 'Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again.', - comment: 'Error shown when the browser blocks the pop-up window used for password manager passkeys.', -}); -const PASSKEY_BRIDGE_FAILED_DESCRIPTOR = msg({ - message: "Couldn't use your passkey in the pop-up window. Try again.", - comment: 'Error shown when the pop-up window used for password manager passkeys does not finish.', -}); - -export class PasskeyBridgeError extends Error { - constructor(name: string, message: string) { - super(message); - this.name = name; - } -} - -export function isPasskeyBridgeAvailable(): boolean { - return !Platform.isElectron && resolvePasskeyBridgeLegacyOrigin(window.location.origin) !== null; -} - -export function shouldSuggestPasskeyBridge(error: unknown): boolean { - if (!isPasskeyBridgeAvailable() || error instanceof PasskeyBridgeError) { - return false; - } - return ( - error instanceof PasskeyDomainUnsupportedError || - (error instanceof Error && SUGGEST_BRIDGE_ERROR_NAMES.has(error.name)) - ); -} - -function isPasskeyBridgeDismissal(error: unknown): boolean { - return error instanceof PasskeyBridgeError && (error.name === 'AbortError' || error.name === 'NotAllowedError'); -} - -export function describePasskeyBridgeFailure(error: unknown): MessageDescriptor | null { - if (isPasskeyBridgeDismissal(error)) { - return null; - } - if (error instanceof PasskeyBridgeError && error.name === 'PopupBlockedError') { - return PASSKEY_BRIDGE_POPUP_BLOCKED_DESCRIPTOR; - } - return PASSKEY_BRIDGE_FAILED_DESCRIPTOR; -} - -export function runPasskeyViaBridge( - kind: K, - options: Promise, -): Promise { - const legacyOrigin = isPasskeyBridgeAvailable() ? resolvePasskeyBridgeLegacyOrigin(window.location.origin) : null; - const popup = - legacyOrigin === null - ? null - : window.open(`${legacyOrigin}${PASSKEY_BRIDGE_PATH}`, '_blank', PASSKEY_BRIDGE_POPUP_FEATURES); - if (legacyOrigin === null || popup === null) { - options.catch(() => {}); - const name = legacyOrigin === null ? 'NotSupportedError' : 'PopupBlockedError'; - return Promise.reject(new PasskeyBridgeError(name, 'The passkey window could not be opened')); - } - return new Promise((resolve, reject) => { - const id = crypto.randomUUID(); - let ready = false; - let settled = false; - let requestSent = false; - let closedSeen = false; - let resolvedOptions: PasskeyBridgeOptionsMap[K] | null = null; - const cleanup = () => { - window.removeEventListener('message', handleMessage); - window.clearInterval(closedPoll); - window.clearTimeout(timeout); - }; - const fail = (error: unknown) => { - if (settled) { - return; - } - settled = true; - cleanup(); - if (!popup.closed) { - popup.close(); - } - reject(error); - }; - const sendRequest = () => { - if (!ready || resolvedOptions === null || requestSent || settled) { - return; - } - requestSent = true; - const request = { - type: PASSKEY_BRIDGE_REQUEST_TYPE, - v: PASSKEY_BRIDGE_VERSION, - id, - kind, - options: resolvedOptions, - } as PasskeyBridgeRequest; - popup.postMessage(request, legacyOrigin); - popup.focus(); - }; - const handleMessage = (event: MessageEvent) => { - if (settled || event.origin !== legacyOrigin || event.source !== popup) { - return; - } - if (isPasskeyBridgeReady(event.data)) { - ready = true; - sendRequest(); - return; - } - const result = parsePasskeyBridgeResult(event.data, id); - if (result === null) { - return; - } - if (!result.ok) { - fail(new PasskeyBridgeError(result.error.name, result.error.message)); - return; - } - settled = true; - cleanup(); - resolve(result.response as PasskeyBridgeResponseMap[K]); - }; - const closedPoll = window.setInterval(() => { - if (!popup.closed) { - return; - } - if (closedSeen) { - fail(new PasskeyBridgeError('AbortError', 'The passkey window was closed')); - } - closedSeen = true; - }, PASSKEY_BRIDGE_CLOSED_POLL_MS); - const timeout = window.setTimeout(() => { - fail(new PasskeyBridgeError('TimeoutError', 'The passkey window timed out')); - }, PASSKEY_BRIDGE_TIMEOUT_MS); - window.addEventListener('message', handleMessage); - options.then( - (value) => { - resolvedOptions = value; - sendRequest(); - }, - (error: unknown) => fail(error), - ); - }); -} diff --git a/fluxer_app/src/features/auth/utils/PasskeyBridgeProtocol.test.ts b/fluxer_app/src/features/auth/utils/PasskeyBridgeProtocol.test.ts deleted file mode 100644 index c40f96181..000000000 --- a/fluxer_app/src/features/auth/utils/PasskeyBridgeProtocol.test.ts +++ /dev/null @@ -1,92 +0,0 @@ -// SPDX-License-Identifier: AGPL-3.0-or-later - -import { - PASSKEY_BRIDGE_REQUEST_TYPE, - PASSKEY_BRIDGE_RESULT_TYPE, - parsePasskeyBridgeRequest, - parsePasskeyBridgeResult, - resolvePasskeyBridgeLegacyOrigin, - resolvePasskeyBridgeOpenerOrigin, -} from '@app/features/auth/utils/PasskeyBridgeProtocol'; -import {describe, expect, it} from 'vitest'; - -function authenticateRequest(options: Record): Record { - return {type: PASSKEY_BRIDGE_REQUEST_TYPE, v: 1, id: 'req', kind: 'authenticate', options}; -} - -function registerRequest(options: Record): Record { - return {type: PASSKEY_BRIDGE_REQUEST_TYPE, v: 1, id: 'req', kind: 'register', options}; -} - -describe('resolvePasskeyBridgeOpenerOrigin', () => { - it('pairs each official legacy origin with its target only', () => { - expect(resolvePasskeyBridgeOpenerOrigin('https://web.fluxer.app', '/passkey-bridge')).toBe('https://fluxer.com'); - expect(resolvePasskeyBridgeOpenerOrigin('https://web.canary.fluxer.app', '/passkey-bridge')).toBe( - 'https://canary.fluxer.com', - ); - }); - - it('ignores other origins and paths', () => { - expect(resolvePasskeyBridgeOpenerOrigin('https://fluxer.com', '/passkey-bridge')).toBeNull(); - expect(resolvePasskeyBridgeOpenerOrigin('https://fluxer.app', '/passkey-bridge')).toBeNull(); - expect(resolvePasskeyBridgeOpenerOrigin('https://chat.example.com', '/passkey-bridge')).toBeNull(); - expect(resolvePasskeyBridgeOpenerOrigin('https://web.fluxer.app', '/passkey-bridge/')).toBeNull(); - expect(resolvePasskeyBridgeOpenerOrigin('https://web.fluxer.app', '/login')).toBeNull(); - }); -}); - -describe('resolvePasskeyBridgeLegacyOrigin', () => { - it('resolves only from official target origins', () => { - expect(resolvePasskeyBridgeLegacyOrigin('https://fluxer.com')).toBe('https://web.fluxer.app'); - expect(resolvePasskeyBridgeLegacyOrigin('https://canary.fluxer.com')).toBe('https://web.canary.fluxer.app'); - expect(resolvePasskeyBridgeLegacyOrigin('https://web.fluxer.app')).toBeNull(); - expect(resolvePasskeyBridgeLegacyOrigin('https://chat.example.com')).toBeNull(); - }); -}); - -describe('parsePasskeyBridgeRequest', () => { - it('accepts requests for the fluxer.app relying party', () => { - expect(parsePasskeyBridgeRequest(authenticateRequest({challenge: 'c', rpId: 'fluxer.app'}))).not.toBeNull(); - expect( - parsePasskeyBridgeRequest(registerRequest({challenge: 'c', rp: {id: 'fluxer.app', name: 'Fluxer'}, user: {}})), - ).not.toBeNull(); - }); - - it('rejects any other relying party', () => { - for (const rpId of ['evil.example', 'web.fluxer.app', 'fluxer.com', 'app', undefined]) { - expect(parsePasskeyBridgeRequest(authenticateRequest({challenge: 'c', rpId}))).toBeNull(); - expect(parsePasskeyBridgeRequest(registerRequest({challenge: 'c', rp: {id: rpId}, user: {}}))).toBeNull(); - } - expect(parsePasskeyBridgeRequest(registerRequest({challenge: 'c', rpId: 'fluxer.app', user: {}}))).toBeNull(); - expect(parsePasskeyBridgeRequest(authenticateRequest({challenge: 'c', rp: {id: 'fluxer.app'}}))).toBeNull(); - }); - - it('rejects malformed envelopes', () => { - const options = {challenge: 'c', rpId: 'fluxer.app'}; - expect(parsePasskeyBridgeRequest({...authenticateRequest(options), v: 2})).toBeNull(); - expect(parsePasskeyBridgeRequest({...authenticateRequest(options), type: 'other'})).toBeNull(); - expect(parsePasskeyBridgeRequest({...authenticateRequest(options), id: ''})).toBeNull(); - expect(parsePasskeyBridgeRequest({...authenticateRequest(options), kind: 'sign'})).toBeNull(); - expect(parsePasskeyBridgeRequest(authenticateRequest({rpId: 'fluxer.app'}))).toBeNull(); - expect(parsePasskeyBridgeRequest('request')).toBeNull(); - }); -}); - -describe('parsePasskeyBridgeResult', () => { - const response = {id: 'cred', rawId: 'cred', response: {}, type: 'public-key', clientExtensionResults: {}}; - - it('accepts only the matching request id', () => { - const result = {type: PASSKEY_BRIDGE_RESULT_TYPE, v: 1, id: 'req', ok: true, response}; - expect(parsePasskeyBridgeResult(result, 'req')).not.toBeNull(); - expect(parsePasskeyBridgeResult(result, 'other')).toBeNull(); - }); - - it('normalises failures and rejects malformed successes', () => { - expect( - parsePasskeyBridgeResult({type: PASSKEY_BRIDGE_RESULT_TYPE, v: 1, id: 'req', ok: false, error: {}}, 'req'), - ).toMatchObject({ok: false, error: {name: 'UnknownError', message: ''}}); - expect( - parsePasskeyBridgeResult({type: PASSKEY_BRIDGE_RESULT_TYPE, v: 1, id: 'req', ok: true, response: {}}, 'req'), - ).toBeNull(); - }); -}); diff --git a/fluxer_app/src/features/auth/utils/PasskeyBridgeProtocol.ts b/fluxer_app/src/features/auth/utils/PasskeyBridgeProtocol.ts deleted file mode 100644 index 3100d08f7..000000000 --- a/fluxer_app/src/features/auth/utils/PasskeyBridgeProtocol.ts +++ /dev/null @@ -1,156 +0,0 @@ -// SPDX-License-Identifier: AGPL-3.0-or-later - -import { - DOMAIN_MIGRATION_SOURCE_TO_TARGET, - DOMAIN_MIGRATION_TARGET_TO_SOURCE, -} from '@app/features/app/domain_migration/DomainMigrationCore'; -import type { - AuthenticationResponseJSON, - PublicKeyCredentialCreationOptionsJSON, - PublicKeyCredentialRequestOptionsJSON, - RegistrationResponseJSON, -} from '@simplewebauthn/browser'; - -export const PASSKEY_BRIDGE_PATH = '/passkey-bridge'; -export const PASSKEY_BRIDGE_VERSION = 1; -export const PASSKEY_BRIDGE_RP_ID = 'fluxer.app'; -export const PASSKEY_BRIDGE_TIMEOUT_MS = 5 * 60 * 1000; -export const PASSKEY_BRIDGE_READY_TYPE = 'fluxer:passkey-bridge:ready'; -export const PASSKEY_BRIDGE_REQUEST_TYPE = 'fluxer:passkey-bridge:request'; -export const PASSKEY_BRIDGE_RESULT_TYPE = 'fluxer:passkey-bridge:result'; - -export type PasskeyBridgeKind = 'authenticate' | 'register'; - -export interface PasskeyBridgeOptionsMap { - authenticate: PublicKeyCredentialRequestOptionsJSON; - register: PublicKeyCredentialCreationOptionsJSON; -} - -export interface PasskeyBridgeResponseMap { - authenticate: AuthenticationResponseJSON; - register: RegistrationResponseJSON; -} - -export type PasskeyBridgeRequest = { - [K in PasskeyBridgeKind]: { - type: typeof PASSKEY_BRIDGE_REQUEST_TYPE; - v: typeof PASSKEY_BRIDGE_VERSION; - id: string; - kind: K; - options: PasskeyBridgeOptionsMap[K]; - }; -}[PasskeyBridgeKind]; - -export interface PasskeyBridgeErrorPayload { - name: string; - message: string; -} - -export type PasskeyBridgeResult = - | { - type: typeof PASSKEY_BRIDGE_RESULT_TYPE; - v: typeof PASSKEY_BRIDGE_VERSION; - id: string; - ok: true; - response: PasskeyBridgeResponseMap[PasskeyBridgeKind]; - } - | { - type: typeof PASSKEY_BRIDGE_RESULT_TYPE; - v: typeof PASSKEY_BRIDGE_VERSION; - id: string; - ok: false; - error: PasskeyBridgeErrorPayload; - }; - -function isRecord(value: unknown): value is Record { - return typeof value === 'object' && value !== null && !Array.isArray(value); -} - -function isNonEmptyString(value: unknown): value is string { - return typeof value === 'string' && value.length > 0; -} - -export function resolvePasskeyBridgeOpenerOrigin(origin: string, pathname: string): string | null { - if (pathname !== PASSKEY_BRIDGE_PATH) { - return null; - } - return DOMAIN_MIGRATION_SOURCE_TO_TARGET[origin] ?? null; -} - -export function resolvePasskeyBridgeLegacyOrigin(origin: string): string | null { - return DOMAIN_MIGRATION_TARGET_TO_SOURCE[origin] ?? null; -} - -export function isPasskeyBridgeReady(data: unknown): boolean { - return isRecord(data) && data.type === PASSKEY_BRIDGE_READY_TYPE && data.v === PASSKEY_BRIDGE_VERSION; -} - -export function readPasskeyBridgeRequestId(data: unknown): string | null { - return isRecord(data) && isNonEmptyString(data.id) ? data.id : null; -} - -function readRequestRpId(kind: unknown, options: Record): unknown { - if (kind === 'authenticate') { - return options.rpId; - } - if (kind === 'register') { - return isRecord(options.rp) ? options.rp.id : undefined; - } - return undefined; -} - -export function parsePasskeyBridgeRequest(data: unknown): PasskeyBridgeRequest | null { - if ( - !isRecord(data) || - data.type !== PASSKEY_BRIDGE_REQUEST_TYPE || - data.v !== PASSKEY_BRIDGE_VERSION || - !isNonEmptyString(data.id) || - !isRecord(data.options) || - !isNonEmptyString(data.options.challenge) - ) { - return null; - } - if (readRequestRpId(data.kind, data.options) !== PASSKEY_BRIDGE_RP_ID) { - return null; - } - if (data.kind === 'register' && !isRecord(data.options.user)) { - return null; - } - return data as unknown as PasskeyBridgeRequest; -} - -export function parsePasskeyBridgeResult(data: unknown, id: string): PasskeyBridgeResult | null { - if ( - !isRecord(data) || - data.type !== PASSKEY_BRIDGE_RESULT_TYPE || - data.v !== PASSKEY_BRIDGE_VERSION || - data.id !== id - ) { - return null; - } - if (data.ok === true) { - return isRecord(data.response) && isNonEmptyString(data.response.id) && isRecord(data.response.response) - ? (data as unknown as PasskeyBridgeResult) - : null; - } - if (data.ok === false && isRecord(data.error)) { - return { - type: PASSKEY_BRIDGE_RESULT_TYPE, - v: PASSKEY_BRIDGE_VERSION, - id, - ok: false, - error: { - name: typeof data.error.name === 'string' ? data.error.name : 'UnknownError', - message: typeof data.error.message === 'string' ? data.error.message : '', - }, - }; - } - return null; -} - -export function toPasskeyBridgeErrorPayload(error: unknown): PasskeyBridgeErrorPayload { - if (error instanceof Error) { - return {name: error.name, message: error.message}; - } - return {name: 'UnknownError', message: String(error)}; -} diff --git a/fluxer_app/src/features/auth/utils/WebAuthnUtils.ts b/fluxer_app/src/features/auth/utils/WebAuthnUtils.ts index eb9e4aef0..5bb7ab4a8 100644 --- a/fluxer_app/src/features/auth/utils/WebAuthnUtils.ts +++ b/fluxer_app/src/features/auth/utils/WebAuthnUtils.ts @@ -1,10 +1,11 @@ // SPDX-License-Identifier: AGPL-3.0-or-later import {promptForSecurityKeyPin} from '@app/features/auth/components/modals/PasskeyPinModal'; +import {writePasskeyLoginRoute} from '@app/features/auth/passkey_migration/PasskeyLoginRoute'; import {parsePasskeyPinFailure} from '@app/features/auth/utils/PasskeyPinErrors'; import {Platform} from '@app/features/platform/types/Platform'; import {getElectronAPI} from '@app/features/ui/utils/NativeUtils'; -import {msg} from '@lingui/core/macro'; +import {PASSKEY_MIGRATION_RP_ID} from '@fluxer/constants/src/PasskeyConstants'; import { type AuthenticationResponseJSON, browserSupportsWebAuthn, @@ -15,47 +16,6 @@ import { startRegistration, } from '@simplewebauthn/browser'; -export const PASSKEY_DOMAIN_UNSUPPORTED_DESCRIPTOR = msg({ - message: - 'Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code.', - comment: - 'Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain.', -}); -const RP_MISMATCH_MESSAGE_PATTERN = /relying party|\brp ?id\b|\bdomain\b|\borigin\b/i; - -export class PasskeyDomainUnsupportedError extends Error { - constructor() { - super('Passkeys are not supported on this domain in this browser'); - this.name = 'PasskeyDomainUnsupportedError'; - } -} - -function isRelatedOriginFailure(error: unknown, rpId: string | undefined): boolean { - if (!rpId || !(error instanceof Error)) { - return false; - } - const hostname = window.location.hostname.toLowerCase(); - const normalizedRpId = rpId.toLowerCase(); - if (hostname === normalizedRpId || hostname.endsWith(`.${normalizedRpId}`)) { - return false; - } - if (error.name === 'SecurityError') { - return true; - } - return error.name === 'NotAllowedError' && RP_MISMATCH_MESSAGE_PATTERN.test(error.message); -} - -async function runBrowserCeremony(rpId: string | undefined, run: () => Promise): Promise { - try { - return await run(); - } catch (error) { - if (isRelatedOriginFailure(error, rpId)) { - throw new PasskeyDomainUnsupportedError(); - } - throw error; - } -} - async function runNativeCeremonyWithPinSupport(run: (requestContext?: {pin?: string}) => Promise): Promise { try { return await run(); @@ -67,6 +27,14 @@ async function runNativeCeremonyWithPinSupport(run: (requestContext?: {pin?: return promptForSecurityKeyPin((pin) => run({pin})); } +async function rememberMigratedPasskeyUse(rpId: string | undefined, ceremony: Promise): Promise { + const result = await ceremony; + if (rpId === PASSKEY_MIGRATION_RP_ID) { + writePasskeyLoginRoute('native'); + } + return result; +} + export async function assertWebAuthnSupported(): Promise { if (Platform.isElectron) { const electronApi = getElectronAPI(); @@ -93,10 +61,13 @@ export async function performRegistration( const nativeSupported = electronApi && (await electronApi.passkeyIsSupported?.()); const passkeyRegister = electronApi?.passkeyRegister; if (nativeSupported && passkeyRegister) { - return runNativeCeremonyWithPinSupport((requestContext) => passkeyRegister(options, requestContext)); + return rememberMigratedPasskeyUse( + options.rp.id, + runNativeCeremonyWithPinSupport((requestContext) => passkeyRegister(options, requestContext)), + ); } } - return await runBrowserCeremony(options.rp.id, () => startRegistration({optionsJSON: options})); + return rememberMigratedPasskeyUse(options.rp.id, startRegistration({optionsJSON: options})); } export async function performAuthentication( @@ -108,8 +79,11 @@ export async function performAuthentication( const nativeSupported = electronApi && (await electronApi.passkeyIsSupported?.()); const passkeyAuthenticate = electronApi?.passkeyAuthenticate; if (nativeSupported && passkeyAuthenticate) { - return runNativeCeremonyWithPinSupport((requestContext) => passkeyAuthenticate(options, requestContext)); + return rememberMigratedPasskeyUse( + options.rpId, + runNativeCeremonyWithPinSupport((requestContext) => passkeyAuthenticate(options, requestContext)), + ); } } - return await runBrowserCeremony(options.rpId, () => startAuthentication({optionsJSON: options})); + return rememberMigratedPasskeyUse(options.rpId, startAuthentication({optionsJSON: options})); } diff --git a/fluxer_app/src/features/gateway/events/GatewayReady.ts b/fluxer_app/src/features/gateway/events/GatewayReady.ts index d39526933..bd4493a43 100644 --- a/fluxer_app/src/features/gateway/events/GatewayReady.ts +++ b/fluxer_app/src/features/gateway/events/GatewayReady.ts @@ -2,6 +2,7 @@ import {startDomainMigrationTrigger} from '@app/features/app/domain_migration/DomainMigrationTrigger'; import Initialization from '@app/features/app/state/Initialization'; +import PasskeyMigration from '@app/features/auth/passkey_migration/PasskeyMigration'; import AccountManager from '@app/features/auth/state/AccountManager'; import accountStorage from '@app/features/auth/state/AccountStorage'; import Authentication from '@app/features/auth/state/Authentication'; @@ -186,4 +187,5 @@ function handleReadyInternal(data: ReadyPayload, context: GatewayHandlerContext) context.setReady(); Messages.handleGatewayReady(); startDomainMigrationTrigger(); + PasskeyMigration.handleGatewayReady(data.user.id); } diff --git a/fluxer_app/src/features/i18n/locales/ar/messages.po b/fluxer_app/src/features/i18n/locales/ar/messages.po index 72a5b8a78..b42aab824 100644 --- a/fluxer_app/src/features/i18n/locales/ar/messages.po +++ b/fluxer_app/src/features/i18n/locales/ar/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, zero {عضو} one {عضو} two {عضوان} few {أعضاء} many {عضوًا} other {عضو}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, zero {# إشارة} one {إشارة واحدة} two {إشارتان} few {# إشارات} many {# إشارة} other {# إشارة}}" @@ -2370,8 +2370,8 @@ msgstr "6 أشهر" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "رمز مكون من 6 أرقام" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "تجاوزات الحساب وPremium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "الوصول إلى الحساب" @@ -2807,7 +2807,7 @@ msgstr "مشترك شهري نشط (الإلغاء مجدول)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "أضف حسابًا للمتابعة." msgid "Add an email and password to your account first." msgstr "أضف بريدًا إلكترونيًا وكلمة مرور إلى حسابك أولًا." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "أضف طبقة أمان إضافية إلى حسابك" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "إضافة البوت إلى وجهة" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "إضافة قناة" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "إضافة ردود فعل جديدة على الرسائل." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "إضافة ملاحظة" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "إضافة تجاوز" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "إضافة مفتاح مرور" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "إضافة رد فعل" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "إضافة إلى القاموس" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "إضافة إلى المفضلة" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "تمت الإضافة إلى صور GIF المفضلة" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "أُضيف إلى المفضلة" @@ -3296,11 +3296,11 @@ msgstr "أُضيف إلى المفضلة" msgid "Added to saved media" msgstr "تمت الإضافة إلى الوسائط المحفوظة" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "تاريخ الإضافة: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "تاريخ الإضافة: {createdDate} • آخر استخدام: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "كل اللغات" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "كل الرسائل" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "تم الحذف بالفعل" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "هل لديك حساب بالفعل؟" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "تكبير/تصغير التطبيق" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "مستوى تكبير التطبيق" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "موافقة" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "وافق على هذا التطبيق من تطبيق {productName} الذي تستخدمه بالفعل. لا حاجة لكلمة مرور." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "هل أنت متأكد أنك تريد حذف الفئة \"{categoryName}\"؟ لا يمكن التراجع عن هذا الإجراء." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "هل أنت متأكد أنك تريد حذف مفتاح المرور <0>{0}؟" @@ -4493,7 +4493,7 @@ msgstr "هل أنت متأكد أنك تريد حذف هذا المرفق؟ لا msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "هل أنت متأكد أنك تريد حذف هذا المجتمع؟ لا يمكن التراجع عن هذا الإجراء. سيتم حذف جميع القنوات والرسائل والإعدادات نهائيًا." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "هل أنت متأكد أنك تريد حذف مفتاح المرور هذا؟" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "طلب التأكيد قبل بدء المكالمات" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "يُطلب منك مفتاح مرور بعد كلمة المرور عند تسجيل الدخول" @@ -4690,7 +4690,7 @@ msgstr "المرفقات" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "الصوت" @@ -4851,14 +4851,14 @@ msgstr "المصادقة" msgid "Authenticator" msgstr "تطبيق المصادقة" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "تطبيق المصادقة" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "رمز المصادقة" @@ -4928,7 +4928,7 @@ msgstr "التطبيقات المصرّح بها" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "غير متواجد حاليًا" msgid "Back" msgstr "رجوع" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "العودة إلى {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "العودة إلى الأدوار" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "العودة إلى الإعدادات" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "العودة إلى تسجيل الدخول" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "رمز احتياطي" @@ -5351,7 +5356,7 @@ msgstr "رمز احتياطي" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "تم بلوغ الحد الأقصى من الإشارات المرجعي #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "المكالمات" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "إيقاف الكاميرا" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "تشغيل الكاميرا" @@ -6364,9 +6369,9 @@ msgstr "لا يمكن تحميل الملفات هنا" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "لا يمكن تحميل الملفات هنا" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "تغيير الرمز التعبيري" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "تغيير الاسم المستعار للصديق" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "تغيير اسمي المستعار في المجموعة" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "تغيير الاسم المستعار" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "إجراءات القناة" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "تمت إضافة القناة إلى المفضلة" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "تم إنشاء القناة" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "تصحيح أخطاء القناة" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "تم حذف القناة" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "سجل القناة" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "تمت إزالة القناة من المفضلة" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "اختر لون تمييز ملفك الشخصي" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "المطالبة بالحساب" @@ -7715,7 +7720,7 @@ msgstr "طالب بحسابك وتحقق من بريدك الإلكتروني ل msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "طالب بحسابك بإضافة بريد إلكتروني وكلمة مرور. سنرسل رمز تحقق لتأكيد بريدك الإلكتروني قبل الإتمام." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "طالب بحسابك للوصول إلى ميزات الأمان مثل المصادقة الثنائية ومفاتيح المرور." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "هل تريد مسح CSS السريع؟" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "مسح البحث" @@ -8103,7 +8108,7 @@ msgstr "تم إيقاف الاستنساخ" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "إغلاق" @@ -8160,11 +8165,9 @@ msgstr "الإغلاق إلى شريط القائمة" msgid "Close to tray" msgstr "الإغلاق إلى علبة النظام" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "إغلاق النافذة" @@ -8456,7 +8459,7 @@ msgstr "التواصل" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "تصحيح أخطاء المجتمع" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "الإعداد الافتراضي للمجتمع" @@ -8577,7 +8580,7 @@ msgstr "سجل عضو المجتمع" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "أعضاء المجتمع" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "مستوى إشعارات المجتمع" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "إعدادات إشعارات المجتمع" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "مقارنة" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "إكمال التحقق من المحتوى للبالغين" @@ -9093,7 +9096,7 @@ msgstr "الاتصال: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "يمكن فتح قوائم السياق بالنقر بزر الفأرة #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "متابعة" msgid "Continue to checkout" msgstr "متابعة الدفع" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "تابع لإنشاء مفتاح مرور لـ {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "متابعة الإبلاغ عن المجتمع" msgid "Continue to report user" msgstr "متابعة الإبلاغ عن المستخدم" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "المتابعة باستخدام مفتاح المرور" @@ -9238,11 +9238,6 @@ msgstr "المتابعة باستخدام مفتاح المرور" msgid "Continue with SSO" msgstr "المتابعة باستخدام الدخول الموحّد (SSO)" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "تابع باستخدام مفتاح المرور الخاص بك لتسجيل الدخول إلى {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "ينسّق الاقتحامات الجماعية أو الهجمات ا #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "تم النسخ" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "نسخ معرف الفئة" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "نسخ معرف القناة" @@ -9421,12 +9416,12 @@ msgstr "نسخ رابط القناة" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "نسخ الرمز" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "نسخ معرف المجتمع" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "نسخ رابط الدعوة" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "نسخ الرسالة" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "نسخ معرف الرسالة" @@ -9570,7 +9565,7 @@ msgstr "نسخ معرف الرسالة" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "نسخ رابط الملصق" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "انسخ مفتاح الإعداد إلى تطبيق المصادقة." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "نسخ معرف المستخدم" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "نسخ اسم المستخدم" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "تعذّر حذف التطبيق" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "تعذّر حذف مفتاح المرور" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "تعذّر إرسال الدعوة" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "تعذّر إرسال الدعوة. حاول مرة أخرى." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "تعذّر تحديث تجاوز كتم الإشارات" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "تعذّر تحديث المصادقة الثنائية بمفاتيح المرور" @@ -10206,6 +10201,11 @@ msgstr "تعذر تحديث النص البديل. الرجاء المحاولة msgid "Couldn't update voice activity sharing right now" msgstr "تعذر تحديث مشاركة النشاط الصوتي الآن" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "تعذر تحديث مفتاح المرور الخاص بك. حاول مرة أخرى." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "تعذر تحميل الصورة الرمزية" msgid "Couldn't upload banner" msgstr "تعذّر تحميل اللافتة" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "تعذر استخدام مفتاح المرور الخاص بك في النافذة المنبثقة. حاول مرة أخرى." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "تعذّر التحقق من الرمز. حاول مرة أخرى." msgid "Couldn't verify the connection" msgstr "تعذّر التحقق من الاتصال" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "تعذّر التحقق باستخدام مفتاح المرور. حاول مرة أخرى." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "مريح" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "إنشاء" @@ -10298,7 +10293,7 @@ msgstr "إنشاء مجموعة جديدة مع {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "إنشاء تطبيق" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "إنشاء فئة" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "إنشاء قناة" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "إنشاء مجتمع" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "نص تحذير مخصص" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "مخصص…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "تصحيح الأخطاء" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "تصحيح أخطاء القناة" @@ -11164,7 +11159,7 @@ msgstr "تصحيح أخطاء الرسالة" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "تصحيح أخطاء المستخدم" @@ -11315,7 +11310,7 @@ msgstr "ديلاوير" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "حذف {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "حذف الحساب" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "حذف التطبيق" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "حذف المرفق" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "حذف الوسائط" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "حذف الرسالة" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "حذف رسائل الأعضاء الآخرين. للتثبيت إذن منفصل." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "حذف مفتاح المرور" @@ -11701,7 +11696,7 @@ msgstr "صف موضوع مجتمعك" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "الوصف" @@ -11966,7 +11961,7 @@ msgstr "الجهاز:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "إدخال مباشر" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "رسالة مباشرة" @@ -12050,7 +12045,7 @@ msgstr "معاينات الرسائل المباشرة" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "الرسائل المباشرة" @@ -12077,14 +12072,14 @@ msgstr "التحميل المباشر نشط" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "تعطيل" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "تعطيل الحساب" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "غير متصل" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "مجتمع قابل للاكتشاف" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "المميّز" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "تجاهل" @@ -12477,7 +12472,7 @@ msgstr "إعدادات الرسائل المباشرة وطلبات الصداق #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "تم إغلاق الرسالة المباشرة" @@ -12607,7 +12602,7 @@ msgstr "لا يحظر المستخدم. يمكنك إعادة فتح المحا #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "النطاق" @@ -12697,7 +12692,7 @@ msgstr "انقر نقرًا مزدوجًا على شخص ما لمشاهدة ب #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "الهولندية" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "مثال: YubiKey، أو iPhone، أو حاسوب العمل" @@ -13092,7 +13087,7 @@ msgstr "تعديل الإعدادات العامة مثل الاسم والوص #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "تعديل المجموعة" @@ -13123,7 +13118,7 @@ msgstr "تعديل الوسائط" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "تعديل الرسالة" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "مؤهل لاسترداد المبلغ حتى {windowEndsOn}. سيؤدي هذا أيضًا إلى إلغاء اشتراكك على الفور." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "البريد الإلكتروني" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "تم تحديث الرمز التعبيري" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "الرموز التعبيرية" @@ -13525,7 +13520,7 @@ msgstr "المفضلة فارغة" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "تمكين" @@ -13680,7 +13675,7 @@ msgstr "تفعيل إشعارات الدفع على الجوال" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "تفعيل الإشعارات" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "فعّل عمليات التكامل التي أعددت بيانات اعتمادها. تظهر الخدمات المتاحة فقط." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "تفعيل المصادقة الثنائية" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "الإنجليزية (الولايات المتحدة)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "محسّن" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "أدخل بريدًا إلكترونيًا جديدًا" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "أدخل أحد رموزك الاحتياطية إذا لم تتمكن من استخدام مفتاح المرور." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "أدخل أحد رموزك الاحتياطية." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "أدخل نصًا" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "أدخل الرمز المكون من {digitCount} أرقام من تطبيق المصادقة أو رمزًا احتياطيًا." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "أدخل الرمز قبل المتابعة." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "أدخل الرمز من تطبيق المصادقة الخاص بك." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "أدخل اسمك" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "أدخل كلمة المرور الخاصة بك." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "انتهت صلاحيته في <0>{expiredDate}. لم تعد <1/> نشطة. يمكنك إعادة الاشتراك في أي وقت." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "تاريخ الانتهاء" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "الإكمال التلقائي للتعبيرات" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "فئات منتقي التعبيرات" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "تعذّر تجهيز الرموز التعبيرية" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "تعذّر معالجة الصورة المقصوصة. حاول مرة أخرى." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "تعذّر بدء تسجيل الدخول الموحّد" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "تعذّر تبديل الحساب" @@ -15053,7 +15048,7 @@ msgstr "المفضلة" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "المفضلة" @@ -15268,6 +15263,11 @@ msgstr "إنهاء إعداد الحساب" msgid "Finish account setup first" msgstr "أكمل إعداد الحساب أولاً" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "أكمل في علامة التبويب الجديدة. إذا أغلقتها، اضغط على \"المتابعة باستخدام مفتاح المرور\" مرة أخرى." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "اسم المجلد" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "إعدادات المجلد" @@ -15479,7 +15479,7 @@ msgstr "لنفسي" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "لهذا التحقق، سترسل لنا رسالة نصية بدلاً من أن تستقبلها منا." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "حفاظًا على أمانك، أكّد هويتك للمتابعة." @@ -15606,7 +15606,7 @@ msgstr "نسيت كلمة المرور" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "هل نسيت كلمة المرور؟" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "الأصدقاء والمجتمعات الصغيرة فقط" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "أصدقاء الأصدقاء" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "عام" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "ألمانيا" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "احصل على {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "روابط GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "صور GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "اختصار على مستوى النظام" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "رجوع" @@ -16374,6 +16374,11 @@ msgstr "رجوع" msgid "Go back and enter a valid email." msgstr "ارجع وأدخل بريدًا إلكترونيًا صالحًا." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "ارجع إلى {productName} للمتابعة." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "إخفاء ملاحظات انتهاء الصلاحية" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "إخفاء المفضلة" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "إخفاء المكتومة" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "إخفاء القنوات المكتومة" @@ -17358,7 +17363,7 @@ msgstr "الهوية" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "خامل" @@ -17818,7 +17823,7 @@ msgstr "ملف شخصي غير لائق" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "صندوق الوارد" @@ -17867,7 +17872,7 @@ msgstr "أدخل معرف المجتمع." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "معاينة صفحة الدعوة" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "دعوة أشخاص" @@ -18456,7 +18461,7 @@ msgstr "الداعي:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "الدعوات" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "الانضمام إلى المكالمة" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "الانضمام إلى المجتمع" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "تاريخ الانضمام إلى {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "انتقال" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "طرد عضو من هذا المجتمع." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "طرد العضو" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "مغادرة المكالمة" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "مغادرة المجتمع" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "أداة إنشاء الروابط" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "تم نسخ الرابط إلى الحافظة" @@ -19859,8 +19864,8 @@ msgstr "برامج ضارة أو روابط خطيرة" msgid "Malware, credential theft, or harmful files." msgstr "برامج ضارة، أو سرقة بيانات اعتماد، أو ملفات مؤذية." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "إدارة" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "إدارة الحسابات" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "إدارة التطبيقات والأجهزة التي لديها حق الوصول إلى حسابك" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "وضع علامة على كل قنوات صندوق الوارد غير المقروءة كمقروءة فورًا دون طلب تأكيد" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "وضع علامة كمقروءة" @@ -20021,7 +20026,7 @@ msgstr "وضع علامة كمحتوى مخفي" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "وضع علامة كغير مقروءة" @@ -20169,7 +20174,7 @@ msgstr "مجتمع للبالغين" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "محتوى للبالغين" @@ -20315,7 +20320,7 @@ msgstr "جارٍ القياس…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "أعضاء" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "الأعضاء" @@ -20616,7 +20621,7 @@ msgstr "هل تريد الإشارة إلى هذا الدور؟" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "الإشارات" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "المزيد من إجراءات الوسائط" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "المزيد من الخيارات" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "كتم صوت المكالمات" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "كتم الفئة" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "كتم المجتمعات" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "كتم المجتمع" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "كتم صوت الدخول" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "كتم المفضلة" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "يجب أن يتكون الاسم من حرفين على الأقل" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "تسمية مفتاح المرور" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "نموذج تسمية مفتاح المرور" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "نبراسكا" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "هل تحتاج إلى حساب؟" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "نيفادا" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "أبدًا" @@ -22276,7 +22281,7 @@ msgstr "الأحدث أولاً" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "التالي" @@ -22905,7 +22910,7 @@ msgstr "لم يتم العثور على مستخدمين" msgid "No verification is required." msgstr "لا يلزم التحقق." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "لا توجد طرق تحقق متاحة" @@ -23038,11 +23043,13 @@ msgstr "الصفحة غير موجودة" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "ليس الآن" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "ملاحظة (مرئية لك فقط)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "لا شيء" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "تجاوزات الإشعارات" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "إعدادات الإشعارات" @@ -23152,7 +23159,7 @@ msgstr "مستوى صوت الإشعارات" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "إيقاف" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "غير متصل" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "حسنًا" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "موافق" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "متصلون" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "متصل" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "يمكن فقط للأعضاء الذين لديهم إذن \"{manageCommunityPermissionLabel}\" تغيير هذا." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "الإشارات فقط" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "فتح {labelText} في الإعدادات" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "فتح {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "الرسائل المباشرة المفتوحة" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "فتح رسالة مباشرة" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "فتح الفاتورة {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "فتح الرابط" @@ -23850,7 +23857,7 @@ msgstr "فتح التبديل السريع" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "فتح الإعدادات" @@ -23935,11 +23942,6 @@ msgstr "فتح نافذة استوديو السمات المنبثقة" msgid "Open theme studio…" msgstr "فتح استوديو السمات…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "افتح هذه النافذة من {productName} لاستخدام مفتاح المرور الخاص بك." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "خيارات" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "مفتاح المرور" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "اسم مفتاح المرور" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "تم تحديث مفتاح المرور" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "مفاتيح المرور" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "تتطلب مفاتيح المرور حزمة macOS موقّعة بمعرف تطبيق صالح. ثبّت عميل سطح المكتب الموقّع وأعد المحاولة." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "كلمة المرور" msgid "Password changed" msgstr "تم تغيير كلمة المرور" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "قد لا يعرض مديرو كلمات المرور مفتاح المرور الخاص بك على عنوان الويب هذا. جرّب ذلك في نافذة منبثقة على العنوان القديم بدلاً من ذلك." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "الصق رابط الرسالة." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "القاموس الشخصي" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "ملاحظات شخصية" @@ -24885,7 +24887,7 @@ msgstr "تثبيت المحادثة الجماعية" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "تثبيت الرسالة" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "مثبتة" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "تم تثبيت الرسالة المباشرة" @@ -25020,7 +25022,7 @@ msgstr "مسؤول المنصة" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "تشغيل" @@ -25318,6 +25320,11 @@ msgstr "اضغط على مفتاح أو زر ماوس أو زر يد تحكم ل msgid "Press a shortcut…" msgstr "اضغط على اختصار…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "اضغط على متابعة لاستخدام مفتاح المرور الخاص بك." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "اللغة الأساسية" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "التنقل الأساسي" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "سياسة الخصوصية" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "إعدادات الخصوصية" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "نصيحة احترافية:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "متابعة" @@ -26090,7 +26097,7 @@ msgstr "التفاعل باستخدام {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "ستؤدي إعادة الإنشاء إلى إبطال الرمز الحالي. حدّث أي كود يستخدم القيمة القديمة." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "تسجيل" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "مفاتيح المرور المسجلة" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "إزالة اللافتة" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "إزالة الإشارة المرجعية" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "إزالة من القاموس" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "إزالة من المفضلة" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "أُزيلت من صور GIF المفضلة" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "أُزيل من المفضلة" @@ -27032,7 +27039,7 @@ msgstr "قد تؤدي إزالة الأذونات إلى الحد من ميزا msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "ستسمح إزالة المهلة لـ <0>{targetUserTag} بإرسال الرسائل والتفاعل والانضمام إلى القنوات الصوتية مرة أخرى." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "إعادة تسمية" @@ -27119,7 +27126,7 @@ msgstr "الردود" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "رد" @@ -27209,7 +27216,7 @@ msgstr "الإبلاغ عن مشكلة" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "الإبلاغ عن الرسالة" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "اشتراط المصادقة الثنائية لإجراءات الإشراف" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "طلب مفتاح مرور كعامل ثانٍ" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "رابط إعادة التعيين غير صالح أو انتهت صلاحيته" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "إعادة تعيين حالة الموافقة على المحتوى للبالغين" @@ -27880,7 +27887,7 @@ msgstr "البحث العكسي بالصورة" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "البحث العكسي عن الصور" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "مراجعة وتأكيد" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "راجع التطبيقات التي يمكنها الوصول إلى حسابك." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "مراجعة المشتريات السابقة وخيارات استرداد الأموال" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "راجع الأجهزة المسجّل دخولها وسجّل الخروج من الجلسات التي لا تتعرف عليها." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "تم تحديث الدور" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "الأدوار" @@ -28261,7 +28268,7 @@ msgstr "التشبع" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "النطاق" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "نطاقات الصلاحيات" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "قارئ الشاشة" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "البحث عن قنوات أو أشخاص أو مجتمعات" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "البحث في الأصدقاء" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "البحث في النص المحدد" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "البحث في الإعدادات" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "البحث في الإعدادات…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "الأمان" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "ميزات الأمان" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "مفتاح الأمان" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "مفتاح الأمان / مفتاح المرور" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "الوسائط الحساسة" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "تم الإرسال" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "الجلسة" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "انتهت جلسة {identifier}. سجّل الدخول مرة أخرى." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "يضبط مستوى صوت كل المؤثرات الصوتية. الإعدادات المخصصة لكل صوت لا تتأثر بهذا." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "تم فتح الإعدادات." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "أقسام الإعدادات" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "الشريط الجانبي" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "تسجيل الدخول" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "سجّل الدخول لاستلام هديتك" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "تسجيل الدخول عبر المتصفح" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "تسجيل الدخول باستخدام مفتاح مرور" @@ -30666,7 +30673,7 @@ msgstr "تسجيل الدخول باستخدام موفر تسجيل الدخو #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "تسجيل الخروج" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "تفاصيل تسجيل الدخول" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "خطوات تسجيل الدخول" @@ -31189,7 +31196,7 @@ msgstr "لا يمكن إضافة بعض المستخدمين" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "حدث خطأ ما" @@ -31374,7 +31381,7 @@ msgstr "مستوى الصوت" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "الأصوات" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "بدء تحميل المرفقات بمجرد إضافتها إلى حقل إدخال الرسالة" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "بدء مكالمة فيديو" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "بدء مكالمة صوتية" @@ -31899,7 +31906,7 @@ msgstr "ملصق" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "ملصق: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "الملصقات" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "إيقاف الوثوق بجميع الروابط؟" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "هل تريد التوقف عن استخدام مفاتيح المرور للمصادقة الثنائية؟" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "إيقاف إشعارات جميع إشارات الأدوار" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "إخفاء التضمينات" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "قناة نصية" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "قناة نصية" @@ -33055,7 +33062,7 @@ msgstr "أرسل لنا رسالة نصية من هاتفك" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "تحويل النص إلى كلام" @@ -33119,6 +33126,11 @@ msgstr "لم تكتمل العملية. ربما غادرت بعض المجتم msgid "That did not go through. Nothing changed. Try again." msgstr "لم تكتمل العملية. لم يتغير شيء. حاول مرة أخرى." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "لم ينجح ذلك. حاول مرة أخرى أو ألغِ." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "لا يبدو هذا لونًا صالحًا. جرّب hex أو rgb() أو hsl() أو اسم لون CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "تعذّر استخدام هذه الصورة. جرّب ملفًا آخر." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "هذه الصورة غير صالحة. جرب صورة أخرى." @@ -34035,11 +34047,11 @@ msgstr "هذا هو وصف الخيار الثاني" msgid "This is the third option description" msgstr "هذا هو وصف الخيار الثالث" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "هذا هو آخر مفتاح مرور لديك، ومفاتيح المرور هي العامل الثاني لديك. سيؤدي حذفه إلى إيقاف المصادقة الثنائية لحسابك، وستتوقف رموزك الاحتياطية الحالية عن العمل." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "هذا هو آخر مفتاح مرور لديك. بمجرد حذفه، لن تتمكن من استخدام مفتاح مرور كعامل ثانٍ." @@ -34154,16 +34166,6 @@ msgstr "السمع معطّل لدى هذا المشارك" msgid "This participant was deafened by moderators" msgstr "عطّل المشرفون السمع لدى هذا المشارك" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "تعذر التحقق من طلب مفتاح المرور هذا. أغلق هذه النافذة وحاول مرة أخرى." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "انتهت مهلة طلب مفتاح المرور هذا. أغلق هذه النافذة وحاول مرة أخرى." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "سيؤدي هذا إلى إزالة جميع النطاقات الموث msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "سيؤدي هذا إلى إزالة كل الاختصارات المخصصة وإعادة تمكين جميع الاختصارات المضمنة. لا يمكن التراجع عن هذا الإجراء." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "انتهت صلاحية هذا الطلب. ارجع وحاول مرة أخرى." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "انتهت صلاحية رابط إعادة التعيين هذا. تبقى روابط إعادة التعيين صالحة لمدة ساعة واحدة. يُرجى طلب رابط جديد." @@ -34807,7 +34814,7 @@ msgstr "هل تريد نقل ملكية المجموعة إلى {userName}؟" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "نقل الملكية" @@ -34823,7 +34830,7 @@ msgstr "تم نقل الملكية إلى {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "ترجمة" @@ -34980,7 +34987,7 @@ msgstr "جرّب اسم متغير مختلف أو امسح البحث." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "حاول مرة أخرى" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "حاول مرة أخرى" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "حاول مرة أخرى بعد قليل." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "جرّب البحث عن شيء مثل \"السمة\" أو \"الإشعارات\" أو \"الخصوصية\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "جرّب مفتاح الأمان / مفتاح المرور بدلاً من ذلك" @@ -35088,7 +35095,7 @@ msgstr "التركية" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "إيقاف التشغيل" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "أوقف مشاركة الصوت لهذا المصدر أو حاول مرة أخرى بعد لحظة." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "إيقاف تشغيل الكاميرا" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "أوقف تشغيل خصوصية البث قبل عرض تفاصيل تسجيل الدخول أو أمان الحساب." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "تشغيل" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "التحقق بخطوتين" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "المصادقة الثنائية" @@ -35288,7 +35295,7 @@ msgstr "تم تعطيل المصادقة الثنائية" msgid "Two-factor authentication enabled" msgstr "تم تفعيل المصادقة الثنائية" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "تم تفعيل المصادقة الثنائية" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "إلغاء حظر المستخدم" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "غير مصنف" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "تسطير روابط المواقع الإلكترونية" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "فهمت" @@ -35643,7 +35650,7 @@ msgstr "خيار احتياطي شامل. أقل جودة، لكنه يعمل ف #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "إلغاء كتم صوت جميع الأجهزة" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "إلغاء كتم الفئة" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "إلغاء كتم المجتمعات" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "إلغاء كتم المجتمع" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "إلغاء كتم الرسائل المباشرة" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "إلغاء كتم المفضلة" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "إلغاء التثبيت" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "إلغاء تثبيت الرسالة" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "هل تريد إلغاء تثبيت هذه الرسالة؟" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "تم إلغاء تثبيت الرسالة المباشرة" @@ -36193,6 +36200,11 @@ msgstr "تحديث البريد الإلكتروني" msgid "Update my status" msgstr "تحديث حالتي" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "تحديث مفتاح المرور" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "تحديث المهلة" msgid "Update your own nickname." msgstr "تعديل اسمك المستعار." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "تحديث مفتاح المرور الخاص بك" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "استخدم نافذة مخصصة لتحديد تاريخ فاصل لس msgid "Use a different email address and verify it with a code." msgstr "استخدم عنوان بريد إلكتروني مختلفًا وتحقق منه باستخدام رمز." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "استخدام مفتاح مرور من مدير كلمات المرور" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "استخدام القيمة الفعلية" msgid "Use alternative method" msgstr "استخدام طريقة بديلة" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "استخدم تطبيق مصادقة لإنشاء رموز للمصادقة الثنائية" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "استخدم هذا الخيار فقط إذا كان يخالف قواعد {productName} بوضوح ولا يندرج تحت الفئات المذكورة أعلاه." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "هل تريد استخدام مفاتيح المرور للمصادقة الثنائية؟" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "استخدم مفاتيح المرور لتسجيل الدخول بدون كلمة مرور" @@ -36824,8 +36836,8 @@ msgstr "استخدام النشاط الصوتي" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "استخدم المدقق الإملائي في نظام التشغيل لديك عند توفره. وإلا، استخدم قواميس {productName} المدمجة في التطبيق." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "استخدم مفتاح المرور الخاص بك" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "عناصر تحكم المستخدم" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "تصحيح أخطاء المستخدم" @@ -36972,7 +36984,7 @@ msgstr "مستوى صوت المستخدم" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "تم إلغاء التحقق" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "رمز التحقق" @@ -37185,7 +37197,7 @@ msgstr "تم إرسال رسالة تحقق إلى بريدك الإلكترون msgid "Verification expired" msgstr "انتهت صلاحية التحقق" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "مجتمع موثّق" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "تحقق" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "التحقق من الاتصال" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "التحقق من البريد الإلكتروني" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "نموذج التحقق من الهوية" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "تأكيد هويتك" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "تحقق من عنوان بريدك الإلكتروني لإرسال طلبات الصداقة." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "تحقق من بريدك الإلكتروني قبل إضافة مفتاح مرور." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "تحقق من بريدك الإلكتروني قبل إضافة تطبيق مصادقة." @@ -37571,7 +37583,7 @@ msgstr "عرض المستخدمين المحظورين وإدارتهم." msgid "View and manage every webhook configured across your community." msgstr "عرض كل الويب هوك المُعدّة في مجتمعك وإدارتها." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "عرض رموزك الاحتياطية وإدارتها لاستعادة الحساب" @@ -37605,7 +37617,7 @@ msgstr "عرض القناة" msgid "View channel members" msgstr "عرض أعضاء القناة" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "عرض الرموز" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "عرض الخطط" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "عرض الملف الشخصي" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "قناة صوتية" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "قناة صوتية" @@ -38073,7 +38085,7 @@ msgstr "ملغاة" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "انتظر هنا" msgid "Waiting for connection..." msgstr "في انتظار الاتصال..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "جارٍ انتظار مفتاح المرور…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "مشاهدة" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "مشاهدة البث" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "معاينات المواقع" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "أهلاً بعودتك" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "أنت لست عضوًا في أي مجتمعات حاليًا." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "لقد حظرت {userName}. لن تتمكن من إرسال الرسائل إلا إذا ألغيت حظره." @@ -39101,6 +39113,11 @@ msgstr "يمكنك إلغاء عملية الحذف خلال 14 يومًا" msgid "You can close this modal. The import will continue in the background." msgstr "يمكنك إغلاق هذه النافذة. سيستمر الاستيراد في الخلفية." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "يمكنك إغلاق علامة التبويب هذه" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "يمكنك الآن إغلاق علامة التبويب هذه والعودة إلى التطبيق." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "لا يمكنك إرسال طلب صداقة لنفسك." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "لا يمكنك إرسال رسائل في هذه القناة." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "لا يزال يتعين عليك إكمال خطوة البريد الإلكتروني." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "لن يُطلب منك مفتاح مرور بعد كلمة المرور بعد الآن. سيظل تطبيق المصادقة هو العامل الثاني لديك." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "سيتعين عليك تسجيل الدخول مرة أخرى على جميع الأجهزة التي تم تسجيل الخروج منها" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "ستحتاج إلى أحد مفاتيح المرور لديك لتسجيل الدخول على جهاز جديد. إذا فقدت جميع مفاتيح المرور، فقد تفقد الوصول إلى حسابك نهائيًا. سنحفظ لك رموزًا احتياطية حتى تبقى لديك طريقة للدخول." @@ -39918,12 +39935,12 @@ msgstr "حسابك جديد جدًا ولا يمكنه إرسال رسائل ف msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "طلب حسابك بانتظار الموافقة. يمكنك تسجيل الدخول بعد أن يوافق عليه أحد المسؤولين." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "يتطلب حسابك مصادقة متعددة العوامل، ولكن لم يتم إعداد أي طرق مدعومة على هذا الجهاز. سجّل الدخول على جهاز باستخدام تطبيق المصادقة أو مفتاح الأمان الخاص بك، أو اتصل بالدعم." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "لن يكون حسابك محميًا بالمصادقة الثنائية بعد الآن عند تسجيل الدخول بكلمة المرور. كما ستفقد الأذونات المرتفعة في المجتمعات التي تتطلب المصادقة الثنائية." @@ -39941,16 +39958,6 @@ msgstr "تعذّر إكمال الإجراء الذي طلبته لأن أنظم msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "طلبك قيد المراجعة. لا يزال بإمكانك تحديث تفاصيل الإدراج أو سحب الطلب." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "منع متصفحك النافذة المنبثقة لمفتاح المرور. اسمح بالنوافذ المنبثقة لهذا الموقع وحاول مرة أخرى." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "متصفحك لا يدعم مفاتيح المرور على هذا النطاق. قم بتحديث متصفحك، أو سجّل الدخول باستخدام كلمة مرورك ورمز المصادقة الثنائية." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "يحتاج مجتمعك إلى {minMemberCount, plural, zero {# عضو} msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "تم التحقق من بطاقتك الائتمانية. إذا كانت البطاقة صالحة، فسيتم إلغاء قفل محتوى البالغين قريبًا. يمكنك إغلاق علامة التبويب هذه والعودة إلى التطبيق." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "سيطلب منك جهازك حفظ مفتاح مرور محدّث لـ {name}. سيحل محل المفتاح القديم." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "سيطلب منك جهازك حفظ مفتاح مرور محدّث لـ {name}. استخدم نفس الهاتف أو مفتاح الأمان الذي استخدمته للتو." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "تكبير النافذة" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "تكبير" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/auto-i18n-reviewed-unchanged.json b/fluxer_app/src/features/i18n/locales/auto-i18n-reviewed-unchanged.json index 227e02aeb..bb73679af 100644 --- a/fluxer_app/src/features/i18n/locales/auto-i18n-reviewed-unchanged.json +++ b/fluxer_app/src/features/i18n/locales/auto-i18n-reviewed-unchanged.json @@ -1545,6 +1545,9 @@ { "msgid": "Automatic ({codec})" }, + { + "msgid": "Back to {productName}" + }, { "msgid": "Backup code" }, @@ -1788,12 +1791,6 @@ { "msgid": "Contact the administrators of this instance for help." }, - { - "msgid": "Continue to create a passkey for {host}" - }, - { - "msgid": "Continue with your passkey to sign in to {host}" - }, { "msgid": "Copy emoji" }, @@ -1816,7 +1813,7 @@ "msgid": "Couldn't update passkey two-factor authentication" }, { - "msgid": "Couldn't use your passkey in the pop-up window. Try again." + "msgid": "Couldn't update your passkey. Try again." }, { "msgid": "Create administrator account" @@ -1974,6 +1971,9 @@ { "msgid": "Finish" }, + { + "msgid": "Finish in the new tab. If you closed it, press Continue with passkey again." + }, { "msgid": "Finish setup" }, @@ -1998,6 +1998,9 @@ { "msgid": "Global shortcut" }, + { + "msgid": "Go back to {productName} to continue." + }, { "msgid": "Go to {communityName}" }, @@ -2250,9 +2253,6 @@ { "msgid": "Open the new app and choose Sign in with your old {productName} app. Then choose Link a new device here and enter the code it shows." }, - { - "msgid": "Open this window from {productName} to use your passkey." - }, { "msgid": "Open your old {PRODUCT_NAME} app and choose Link a new device, then enter the code below." }, @@ -2290,7 +2290,7 @@ "msgid": "Our phone number check is down right now. This is on us, not your number. Wait a few minutes and try the same number again." }, { - "msgid": "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." + "msgid": "Passkey updated" }, { "msgid": "Pause preview when Fluxer isn’t focused" @@ -2343,6 +2343,9 @@ { "msgid": "Preparing" }, + { + "msgid": "Press Continue to use your passkey." + }, { "msgid": "Prevent <0>{targetUserTag} from sending messages, reacting, and connecting to voice channels for the specified duration." }, @@ -3145,10 +3148,7 @@ "msgid": "This option is required. Please provide a value." }, { - "msgid": "This passkey request could not be verified. Close this window and try again." - }, - { - "msgid": "This passkey request timed out. Close this window and try again." + "msgid": "This request has expired. Go back and try again." }, { "msgid": "This reset link has expired. Reset links last 1 hour. Please request a new one." @@ -3213,15 +3213,18 @@ { "msgid": "Unread channels" }, + { + "msgid": "Update passkey" + }, + { + "msgid": "Update your passkey" + }, { "msgid": "Upload files and media in messages." }, { "msgid": "Upload files and media in this channel." }, - { - "msgid": "Use a password manager passkey" - }, { "msgid": "Use emoji from other communities in this channel." }, @@ -3300,6 +3303,9 @@ { "msgid": "You asked for {resolution} at {frameRate} FPS" }, + { + "msgid": "You can close this tab" + }, { "msgid": "You can still ask the administrators of this instance for a human review at any time." }, @@ -3321,9 +3327,6 @@ { "msgid": "Your account works normally again straight away and nothing is removed. We can ask for this check again later." }, - { - "msgid": "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." - }, { "msgid": "Your capture device is sending {deliveredResolution} instead of {resolution}." }, @@ -3348,6 +3351,12 @@ { "msgid": "Your device could not keep up, so your stream now sends {resolution} to keep {frameRate} FPS smooth." }, + { + "msgid": "Your device will ask you to save an updated passkey for {name}. It replaces the old one." + }, + { + "msgid": "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." + }, { "msgid": "Your new nickname, or leave blank to reset it." }, diff --git a/fluxer_app/src/features/i18n/locales/bg/messages.po b/fluxer_app/src/features/i18n/locales/bg/messages.po index f25038e2d..e7ee59957 100644 --- a/fluxer_app/src/features/i18n/locales/bg/messages.po +++ b/fluxer_app/src/features/i18n/locales/bg/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {член} other {членове}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# споменаване} other {# споменавания}}" @@ -2370,8 +2370,8 @@ msgstr "6 месеца" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-цифрен код" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Презаписвания на акаунт и премиум" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Достъп до акаунта" @@ -2807,7 +2807,7 @@ msgstr "Активен месечен абонат (планирано анул #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Добави акаунт, за да продължиш." msgid "Add an email and password to your account first." msgstr "Първо добави имейл и парола към акаунта си." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Добави допълнително ниво на защита към акаунта си" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Добавяне на бот към дестинация" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Добавяне на канал" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Добавяне на нови реакции към съобщения." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Добавяне на бележка" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Добавяне на изключение" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Добавяне на ключ за достъп" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Добавяне на реакция" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Добавяне в речника" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Добавяне към любими" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Добавено към любими GIF файлове" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Добавено към любими" @@ -3296,11 +3296,11 @@ msgstr "Добавено към любими" msgid "Added to saved media" msgstr "Добавено към запазени медии" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Добавен: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Добавен: {createdDate} • последно използван: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Всички езици" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Всички съобщения" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Вече не съществува" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Вече имаш акаунт?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Мащаб на приложението" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Мащаб на приложението" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Одобри" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Одобри това приложение от приложението {productName}, което вече използваш. Не е нужна парола." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Наистина ли искаш да изтриеш категорията „{categoryName}“? Това действие не може да бъде отменено." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Наистина ли искаш да изтриеш ключа за достъп <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Наистина ли искаш да изтриеш този прика msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Наистина ли искаш да изтриеш тази общност? Това действие не може да бъде отменено. Всички канали, съобщения и настройки ще бъдат изтрити завинаги." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Наистина ли искаш да изтриеш този ключ за достъп?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Пита преди започване на разговор" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Изисквай ключ за достъп след паролата ти при влизане" @@ -4690,7 +4690,7 @@ msgstr "Прикачени файлове" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Аудио" @@ -4851,14 +4851,14 @@ msgstr "Удостоверяване" msgid "Authenticator" msgstr "Автентикатор" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Приложение за удостоверяване" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Код за удостоверяване" @@ -4928,7 +4928,7 @@ msgstr "Оторизирани приложения" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "В момента ме няма" msgid "Back" msgstr "Назад" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Назад към {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Назад към ролите" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Назад към настройките" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Назад към влизането" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Резервен код" @@ -5351,7 +5356,7 @@ msgstr "Резервен код" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Достигнат лимит за отметки" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Обаждания" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Камерата е изключена" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Камерата е включена" @@ -6364,9 +6369,9 @@ msgstr "Тук не можеш да качваш файлове" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Тук не можеш да качваш файлове" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Смяна на емоджи" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Промяна на прякор на приятел" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Промяна на прякора ми в групата" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Промяна на прякор" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Действия с канала" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Каналът е добавен към любими" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Каналът е създаден" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Отстраняване на грешки в канала" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Каналът е изтрит" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Запис на канала" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Каналът е премахнат от любими" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Избери акцентния цвят на профила си" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Заяви акаунт" @@ -7715,7 +7720,7 @@ msgstr "Заяви акаунта си и потвърди имейла си, з msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Заяви акаунта си, като добавиш имейл и парола. Ще изпратим код за потвърждение на имейла ти, преди да завършиш." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Заяви акаунта си, за да получиш достъп до функции за сигурност като двуфакторно удостоверяване и ключове за достъп." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Да се изчисти ли бързият CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Изчистване на търсенето" @@ -8103,7 +8108,7 @@ msgstr "Клонирането е изключено" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Затвори" @@ -8160,11 +8165,9 @@ msgstr "Затваряне в лентата с менюта" msgid "Close to tray" msgstr "Затваряне в системния трей" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Затваряне на прозореца" @@ -8456,7 +8459,7 @@ msgstr "Комуникация" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Отстраняване на грешки в общността" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "По подразбиране за общността" @@ -8577,7 +8580,7 @@ msgstr "Запис на член на общността" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Членове на общността" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Ниво на известия за общността" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Настройки за известия на общността" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Сравнение" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Завършване на проверката за съдържание за възрастни" @@ -9093,7 +9096,7 @@ msgstr "Връзка: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Контекстните менюта могат да се отваря #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Продължи" msgid "Continue to checkout" msgstr "Продължи към плащане" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Продължи, за да създадеш ключ за достъп за {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Продължи с докладването на общността" msgid "Continue to report user" msgstr "Продължи с докладването на потребителя" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Продължи с ключ за достъп" @@ -9238,11 +9238,6 @@ msgstr "Продължи с ключ за достъп" msgid "Continue with SSO" msgstr "Продължи със SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Продължи с ключа си за достъп, за да влезеш в {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Координира атаки, групови нападки или т #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Копирано" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Копирай ID на категорията" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Копирай ID на канала" @@ -9421,12 +9416,12 @@ msgstr "Копирай линка към канала" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Копирай кода" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Копирай ID на общността" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Копирай URL адреса за покана" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Копирай съобщението" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Копирай ID на съобщението" @@ -9570,7 +9565,7 @@ msgstr "Копирай ID на съобщението" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Копирай URL адреса на стикера" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Копирай ключа за настройка в приложени #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Копирай ID на потребителя" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Копирай потребителското име" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Приложението не можа да бъде изтрито" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Неуспешно изтриване на ключ за достъп" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Поканата не можа да бъде изпратена" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Поканата не можа да бъде изпратена. Опитай отново." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Неуспешно актуализиране на заобикалянето на заглушаването на споменавания" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Неуспешно обновяване на двуфакторното удостоверяване с ключ за достъп" @@ -10206,6 +10201,11 @@ msgstr "Алтернативният текст не можа да бъде ак msgid "Couldn't update voice activity sharing right now" msgstr "Споделянето на гласова активност не можа да бъде актуализирано в момента" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Не успяхме да актуализираме твоя ключ за достъп. Опитай отново." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Неуспешно качване на аватара" msgid "Couldn't upload banner" msgstr "Неуспешно качване на банер" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Ключът ти за достъп не можа да бъде използван в изскачащия прозорец. Опитай отново." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Кодът не можа да бъде потвърден. Опитай msgid "Couldn't verify the connection" msgstr "Връзката не можа да бъде потвърдена" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Неуспешна проверка с ключ за достъп. Опитай отново." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Уютен" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Създаване" @@ -10298,7 +10293,7 @@ msgstr "Създаване на нова група с {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Създаване на приложение" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Създаване на категория" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Създаване на канал" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Създаване на общност" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Персонализиран текст за предупреждение" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "По избор…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Отстраняване на грешки" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Отстраняване на грешки в канала" @@ -11164,7 +11159,7 @@ msgstr "Отстраняване на грешки в съобщението" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Отстраняване на грешки за потребител" @@ -11315,7 +11310,7 @@ msgstr "Делауер" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Изтриване на {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Изтриване на акаунт" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Изтриване на приложението" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Изтриване на прикачен файл" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Изтриване на медия" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Изтриване на съобщението" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Изтриване на съобщения от други членове. Закачането се контролира отделно." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Изтриване на ключ за достъп" @@ -11701,7 +11696,7 @@ msgstr "Опиши за какво е общността ти" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Описание" @@ -11966,7 +11961,7 @@ msgstr "Устройство:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Директен вход" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Директно съобщение" @@ -12050,7 +12045,7 @@ msgstr "Визуализации на директни съобщения" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Директни съобщения" @@ -12077,14 +12072,14 @@ msgstr "Директното качване е активно" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Изключване" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Деактивиране на акаунт" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Няма връзка" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Общност в Откриване" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Дискриминатор" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Отхвърляне" @@ -12477,7 +12472,7 @@ msgstr "Настройки за DM и покани за приятелство" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM е затворено" @@ -12607,7 +12602,7 @@ msgstr "Не блокира. Можеш да го отвориш отново п #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Домейн" @@ -12697,7 +12692,7 @@ msgstr "Кликни два пъти върху някого, за да глед #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Нидерландски" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "напр. YubiKey, iPhone, служебен компютър" @@ -13092,7 +13087,7 @@ msgstr "Редактиране на общи настройки като име, #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Редактиране на групата" @@ -13123,7 +13118,7 @@ msgstr "Редактиране на медия" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Редактиране на съобщението" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Отговаряш на условията за възстановяване на сума до {windowEndsOn}. Това също така незабавно ще анулира абонамента ти." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Имейл" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Емоджито е актуализирано" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Емоджита" @@ -13525,7 +13520,7 @@ msgstr "Няма любими" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Активиране" @@ -13680,7 +13675,7 @@ msgstr "Включване на мобилни известия" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Включване на известията" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Активирай интеграциите, чиито идентификационни данни са конфигурирани. Показват се само наличните услуги." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Включване на двуфакторно удостоверяване" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Английски (САЩ)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Подобрено" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Въведи нов имейл адрес" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Въведи един от резервните си кодове, ако не можеш да използваш ключа си за достъп." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Въведи един от резервните си кодове." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Въведи текст" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Въведи {digitCount}-цифрения код от приложението за удостоверяване или резервен код." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Въведи кода, преди да продължиш." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Въведи кода от приложението за удостоверяване." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Въведи името си" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Въведи паролата си." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Изтече на <0>{expiredDate}. <1/> вече не са активни. Можеш да се абонираш отново по всяко време." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Изтича" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Автоматично довършване на изрази" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Категории на палитрата с изрази" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Неуспешна подготовка на емоджита" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Неуспешна обработка на изрязаното изображение. Опитай отново." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Неуспешно стартиране на SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Неуспешно превключване на акаунт" @@ -15053,7 +15048,7 @@ msgstr "Любими" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Любими" @@ -15268,6 +15263,11 @@ msgstr "Завърши настройката на акаунта" msgid "Finish account setup first" msgstr "Първо завърши настройката на акаунта" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Завърши в новия раздел. Ако си го затворил, натисни отново „Продължи с ключ за достъп“." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Име на папката" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Настройки на папката" @@ -15479,7 +15479,7 @@ msgstr "За мен" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "За тази проверка ти ни изпращаш текстово съобщение, вместо да получаваш такова от нас." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "За твоята сигурност потвърди самоличността си, за да продължиш." @@ -15606,7 +15606,7 @@ msgstr "Забравена парола" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Забравена парола?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Само приятели и малки общности" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Приятели на приятели" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Общи" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Германия" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Вземи {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URL адреси на GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF файлове" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Глобална клавишна комбинация" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Назад" @@ -16374,6 +16374,11 @@ msgstr "Назад" msgid "Go back and enter a valid email." msgstr "Върни се и въведи валиден имейл." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Върни се към {productName}, за да продължиш." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Скрий бележките за изтичане" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Скрий любимите" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Скрий заглушените" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Скрий заглушените канали" @@ -17358,7 +17363,7 @@ msgstr "Идентичност" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Неактивен" @@ -17818,7 +17823,7 @@ msgstr "Неподходящ профил" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Входящи" @@ -17867,7 +17872,7 @@ msgstr "Въведи ID на общността." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Визуализация на страницата на поканата" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Покани хора" @@ -18456,7 +18461,7 @@ msgstr "Поканил:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Покани" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Присъединяване към разговора" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Присъединяване към общността" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "В {productName} от" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Премини" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Изгонване на член от тази общност." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Изгони член" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Напусни разговора" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Напускане на общността" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Създаване на линкове" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Линкът е копиран в клипборда" @@ -19859,8 +19864,8 @@ msgstr "Злонамерен софтуер или опасни линкове" msgid "Malware, credential theft, or harmful files." msgstr "Злонамерен софтуер, кражба на идентификационни данни или опасни файлове." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Управление" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Управление на акаунтите" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Управлявай приложенията и устройствата, които имат достъп до акаунта ти" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Маркира веднага всички непрочетени канали във входящите като прочетени, без да пита за потвърждение" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Маркирай като прочетено" @@ -20021,7 +20026,7 @@ msgstr "Маркирай като спойлер" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Маркирай като непрочетено" @@ -20169,7 +20174,7 @@ msgstr "Общност за възрастни" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Съдържание за възрастни" @@ -20315,7 +20320,7 @@ msgstr "Измерване…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "членове" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Членове" @@ -20616,7 +20621,7 @@ msgstr "Да се спомене ли тази роля?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Споменавания" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Още действия с медия" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Още опции" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Изключване на звука на повикванията" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Изключване на известията за категорията" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Изключване на известията за общностите" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Изключване на известията за общността" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Изключване на звука при влизане" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Изключване на известията за любими" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Името трябва да е поне 2 знака" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Наименуване на ключа за достъп" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Формуляр за наименуване на ключ за достъп" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Небраска" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Нямаш акаунт?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Невада" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Никога" @@ -22276,7 +22281,7 @@ msgstr "Първо най-новите" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Напред" @@ -22905,7 +22910,7 @@ msgstr "Няма намерени потребители" msgid "No verification is required." msgstr "Не се изисква потвърждение." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Няма налични методи за потвърждение" @@ -23038,11 +23043,13 @@ msgstr "Не е намерено" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Не сега" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Бележка (видима само за теб)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Нищо" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Персонализирани известия" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Настройки за известия" @@ -23152,7 +23159,7 @@ msgstr "Сила на звука на известията" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Изкл" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Офлайн" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "OK" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "онлайн" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Онлайн" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Само членове с разрешение „{manageCommunityPermissionLabel}“ могат да променят това." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Само споменавания" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Отваряне на {labelText} в настройките" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Отваряне на {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Отворени директни съобщения" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Отваряне на DM" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Отваряне на фактура {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Отваряне на линка" @@ -23850,7 +23857,7 @@ msgstr "Отваряне на бързия превключвател" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Отваряне на настройките" @@ -23935,11 +23942,6 @@ msgstr "Отваряне на студиото за теми в изскачащ msgid "Open theme studio…" msgstr "Отваряне на студиото за теми…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Отвори този прозорец от {productName}, за да използваш ключа си за достъп." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Опции" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Ключ за достъп" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Име на ключ за достъп" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Ключът за достъп е актуализиран" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Ключове за достъп" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Ключовете за достъп изискват подписан пакет за macOS с валиден идентификатор на приложение. Инсталирай подписаното настолно приложение и опитай отново." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Парола" msgid "Password changed" msgstr "Паролата е сменена" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Мениджърите на пароли може да не предлагат ключа ти за достъп на този уеб адрес. Вместо това опитай в изскачащ прозорец на стария адрес." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Постави линка към съобщението." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Личен речник" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Лични бележки" @@ -24885,7 +24887,7 @@ msgstr "Закачи груповото DM" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Закачи съобщението" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "закачено" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "DM е закачено" @@ -25020,7 +25022,7 @@ msgstr "Администратор на платформата" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Пусни" @@ -25318,6 +25320,11 @@ msgstr "Натисни клавиш, бутон на мишката или бу msgid "Press a shortcut…" msgstr "Натисни клавишна комбинация…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Натисни „Продължи“, за да използваш своя ключ за достъп." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Основен език" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Основна навигация" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Политика за поверителност" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Настройки за поверителност" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Съвет:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Продължи" @@ -26090,7 +26097,7 @@ msgstr "Реагиране с {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Генерирането на нов токен ще направи текущия невалиден. Актуализирай всеки код, който използва старата стойност." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Регистрация" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Регистрирани ключове за достъп" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Премахване на банер" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Премахване на отметката" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Премахване от речника" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Премахване от любими" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Премахнато от любими GIF файлове" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Премахнато от любими" @@ -27032,7 +27039,7 @@ msgstr "Премахването на разрешения може да огр msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Премахването на времето за изчакване ще позволи на <0>{targetUserTag} отново да изпраща съобщения, да реагира и да се присъединява към гласови канали." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Преименуване" @@ -27119,7 +27126,7 @@ msgstr "Отговори" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Отговор" @@ -27209,7 +27216,7 @@ msgstr "Докладване на проблем" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Докладване на съобщение" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Изискване на двуфакторно удостоверяване за модераторски действия" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Изискване на ключ за достъп като втори фактор" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Линкът за нулиране е невалиден или е изтекъл" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Нулиране на състоянието на съгласието за съдържание за възрастни" @@ -27880,7 +27887,7 @@ msgstr "Търсене по изображение" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Търсене по изображение" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Преглед и потвърждение" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Прегледай приложенията, които имат достъп до акаунта ти." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Преглед на минали покупки и опции за възстановяване на сума" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Прегледай устройствата с активен вход и прекрати сесиите, които не разпознаваш." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Ролята е актуализирана" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Роли" @@ -28261,7 +28268,7 @@ msgstr "Наситеност" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Обхват" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Обхвати" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Екранен четец" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Търсене на канали, хора или общности" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Търсене на приятели" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Търсене на избран текст" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Търсене в настройките" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Търсене в настройките…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Сигурност" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Функции за сигурност" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Защитен ключ" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Защитен ключ / ключ за достъп" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Чувствителна медия" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Изпратено" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Сесия" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Сесията за {identifier} е изтекла. Влез отново." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Задава нивото на всеки звуков ефект. Настройките за отделни звуци игнорират това." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Настройките са отворени." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Раздели на настройките" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Странична лента" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Вход" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Влез, за да вземеш подаръка си" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Вход през браузър" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Вход с ключ за достъп" @@ -30666,7 +30673,7 @@ msgstr "Влез с доставчика на единен вход (SSO) на #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Изход" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Данни за вход" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Процес на вход" @@ -31189,7 +31196,7 @@ msgstr "Някои потребители не могат да бъдат доб #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Нещо се обърка" @@ -31374,7 +31381,7 @@ msgstr "Сила на звука" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Звуци" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Качването на прикачените файлове започва веднага след добавянето им в полето за съобщение" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Започване на видеоразговор" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Започване на гласово повикване" @@ -31899,7 +31906,7 @@ msgstr "стикер" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Стикер: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Стикери" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Да спреш ли да се доверяваш на всички линкове?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Да спреш ли да използваш ключове за достъп за двуфакторно удостоверяване?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Заглушаване на всички споменавания на роли" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Скриване на вградените елементи" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "текстов канал" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Текстов канал" @@ -33055,7 +33062,7 @@ msgstr "Изпрати ни съобщение от телефона си" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Текст към говор" @@ -33119,6 +33126,11 @@ msgstr "Действието не завърши. Възможно е някои msgid "That did not go through. Nothing changed. Try again." msgstr "Не се получи. Нищо не се промени. Опитай отново." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Не се получи. Опитай отново или откажи." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Това не прилича на валиден цвят. Опитай с шестнадесетичен код, rgb(), hsl() или име на CSS цвят." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Това изображение не може да се използва. Опитай с друг файл." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Изображението е невалидно. Опитай друго." @@ -34035,11 +34047,11 @@ msgstr "Това е описанието на втората опция" msgid "This is the third option description" msgstr "Това е описанието на третата опция" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Това е последният ти ключ за достъп, а ключовете за достъп са твоят втори фактор. Изтриването му ще изключи двуфакторното удостоверяване за акаунта ти и текущите ти кодове за възстановяване ще спрат да работят." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Това е последният ти ключ за достъп. След като го изтриеш, няма да можеш да използваш ключ за достъп като втори фактор." @@ -34154,16 +34166,6 @@ msgstr "Звукът на този участник е изключен" msgid "This participant was deafened by moderators" msgstr "Звукът на този участник е изключен от модератори" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Тази заявка за ключ за достъп не можа да бъде потвърдена. Затвори този прозорец и опитай отново." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Времето за тази заявка за ключ за достъп изтече. Затвори този прозорец и опитай отново." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Това премахва всички доверени домейни. msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Това премахва всички персонализирани клавишни комбинации и активира отново всички вградени. Това действие не може да бъде отменено." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Тази заявка е изтекла. Върни се и опитай отново." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Линкът за нулиране е изтекъл. Линковете за нулиране са валидни 1 час. Заяви нов." @@ -34807,7 +34814,7 @@ msgstr "Да се прехвърли ли собствеността на гру #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Прехвърляне на собствеността" @@ -34823,7 +34830,7 @@ msgstr "Собствеността е прехвърлена на {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Преведи" @@ -34980,7 +34987,7 @@ msgstr "Опитай с друго име на променлива или из #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Опитай отново" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Опитай отново" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Опитай отново след малко." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Опитай да потърсиш нещо като „тема“, „известия“ или „поверителност“" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Опитай със защитен ключ / ключ за достъп вместо това" @@ -35088,7 +35095,7 @@ msgstr "Турски" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Изключване" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Изключи споделянето на аудио за този източник или опитай отново след малко." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Изключване на камерата" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Изключи поверителността при стрийминг, преди да преглеждаш данни за вход или подробности за сигурността на акаунта." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Включване" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Двуфакторно удостоверяване" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Двуфакторно удостоверяване" @@ -35288,7 +35295,7 @@ msgstr "Двуфакторното удостоверяване е деакти msgid "Two-factor authentication enabled" msgstr "Двуфакторното удостоверяване е активирано" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Двуфакторното удостоверяване е включено" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Отблокиране на потребител" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Без категория" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Подчертаване на линковете към уебсайтове" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Разбрано" @@ -35643,7 +35650,7 @@ msgstr "Универсален вариант. Най-ниско качеств #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Включване на микрофона на всички устройства" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Включване на известията за категорията" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Включване на известията за общностите" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Включване на известията за общността" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Включване на известията за всички DM" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Включване на известията за любими" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Откачи го" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Откачи съобщението" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Да откачиш ли това съобщение?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "DM е откачено" @@ -36193,6 +36200,11 @@ msgstr "Актуализиране на имейл" msgid "Update my status" msgstr "Актуализиране на статуса ми" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Актуализиране на ключ за достъп" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Актуализиране на времето за изчакване" msgid "Update your own nickname." msgstr "Актуализиране на собствения прякор." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Актуализирай своя ключ за достъп" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Използвай отделен прозорец, за да задад msgid "Use a different email address and verify it with a code." msgstr "Използвай друг имейл адрес и го потвърди с код." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Използвай ключ за достъп от мениджър на пароли" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Използване на действителна стойност" msgid "Use alternative method" msgstr "Използвай друг метод" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Използвай приложение за удостоверяване, за да генерираш кодове за двуфакторно удостоверяване" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Използвай само ако явно нарушава правилата на {productName} и не попада в горните категории." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Да използваш ли ключове за достъп за двуфакторно удостоверяване?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Използвай ключове за достъп, за да влизаш без парола" @@ -36824,8 +36836,8 @@ msgstr "Използване на гласова активност" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Използвай проверката на правописа на операционната система, когато е налична. В противен случай използвай вградените речници на {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Използвай ключа си за достъп" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Потребителски контроли" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Отстраняване на грешки за потребител" @@ -36972,7 +36984,7 @@ msgstr "Сила на звука на потребителя" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Проверката е отменена" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Код за потвърждение" @@ -37185,7 +37197,7 @@ msgstr "Изпратен е имейл за потвърждение. Прове msgid "Verification expired" msgstr "Потвърждението изтече" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Верифицирана общност" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Потвърди" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Потвърждаване на връзка" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Потвърди имейла" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Формуляр за потвърждаване на самоличност" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Потвърди самоличността си" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Потвърди имейл адреса си, за да изпращаш покани за приятелство." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Потвърди имейла си, преди да добавиш ключ за достъп." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Потвърди имейла си, преди да добавиш приложение за удостоверяване." @@ -37571,7 +37583,7 @@ msgstr "Преглед и управление на забранените по msgid "View and manage every webhook configured across your community." msgstr "Преглеждай и управлявай всички уебхукове, конфигурирани в общността ти." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Преглед и управление на кодовете за възстановяване на акаунт" @@ -37605,7 +37617,7 @@ msgstr "Преглед на канал" msgid "View channel members" msgstr "Преглед на членовете на канала" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Преглед на кодовете" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Преглед на плановете" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Преглед на профила" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "гласов канал" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Гласов канал" @@ -38073,7 +38085,7 @@ msgstr "Анулирана" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Изчакай тук" msgid "Waiting for connection..." msgstr "Изчакване на връзка..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Изчакване на ключ за достъп…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Гледай" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Гледай стрийма" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Визуализации на уебсайтове" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Добре дошли отново" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "В момента не членуваш в общности." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Ти блокира {userName}. Няма да можеш да изпращаш съобщения, освен ако не го отблокираш." @@ -39101,6 +39113,11 @@ msgstr "Можеш да отмениш процеса по изтриване д msgid "You can close this modal. The import will continue in the background." msgstr "Можеш да затвориш този прозорец. Импортирането ще продължи във фонов режим." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Можеш да затвориш този раздел" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Вече можеш да затвориш този раздел и да се върнеш към приложението." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Не можеш да си изпратиш покана за приятелство." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Не можеш да изпращаш съобщения в този канал." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Ще трябва да завършиш и стъпката с имейла." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "След паролата ти вече няма да се изисква ключ за достъп. Приложението ти за удостоверяване остава като твой втори фактор." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Ще трябва да влезеш отново на всички устройства, от които излезеш" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Ще ти е нужен един от ключовете ти за достъп, за да влезеш от ново устройство. Ако загубиш всички ключове за достъп, може да загубиш достъп до акаунта си. Ще ти бъдат запазени кодове за възстановяване, за да имаш друг начин да влезеш." @@ -39918,12 +39935,12 @@ msgstr "Акаунтът ти е твърде нов, за да изпращаш msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Заявката ти за акаунт чака одобрение. Можеш да влезеш, след като администратор я одобри." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Акаунтът ти изисква многофакторно удостоверяване, но на това устройство не са настроени поддържани методи. Влез от устройство с приложението за удостоверяване или защитния си ключ, или се свържи с поддръжката." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Акаунтът ти вече няма да бъде защитен с двуфакторно удостоверяване, когато влизаш с паролата си. Също така ще загубиш повишените си разрешения в общности, които изискват двуфакторно удостоверяване." @@ -39941,16 +39958,6 @@ msgstr "Действието ти не можа да бъде извършено msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Заявлението ти е в процес на преглед. Все още можеш да актуализираш данните за обявата си или да оттеглиш заявлението." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Браузърът ти блокира изскачащия прозорец за ключ за достъп. Разреши изскачащи прозорци за този сайт и опитай отново." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Браузърът ти не поддържа ключове за достъп за този домейн. Актуализирай браузъра си или влез с паролата и двуфакторния си код." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Общността ти трябва да има поне {minMemberCoun msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Кредитната ти карта е проверена. Ако картата е валидна, съдържанието за възрастни ще се отключи скоро. Можеш да затвориш този раздел и да се върнеш в приложението." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Устройството ти ще поиска да запазиш актуализиран ключ за достъп за {name}. Той ще замени стария." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Устройството ти ще поиска да запазиш актуализиран ключ за достъп за {name}. Използвай същия телефон или защитен ключ, който току-що използва." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Мащабиране" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Увеличаване" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/cs/messages.po b/fluxer_app/src/features/i18n/locales/cs/messages.po index 25b3dc5bf..4facde01a 100644 --- a/fluxer_app/src/features/i18n/locales/cs/messages.po +++ b/fluxer_app/src/features/i18n/locales/cs/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {člen} few {členové} many {člena} other {členů}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# zmínka} few {# zmínky} many {# zmínky} other {# zmínek}}" @@ -2370,8 +2370,8 @@ msgstr "6 měsíců" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6místný kód" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Přepsání účtu a prémiových funkcí" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Přístup k účtu" @@ -2807,7 +2807,7 @@ msgstr "Aktivní měsíční předplatitel (zrušení naplánováno)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Pokračujte přidáním účtu." msgid "Add an email and password to your account first." msgstr "Nejprve si k účtu přidejte e-mail a heslo." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Přidejte ke svému účtu další vrstvu zabezpečení" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Přidat bota do cíle" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Přidat kanál" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Přidávat nové reakce ke zprávám." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Přidat poznámku" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Přidat vlastní oprávnění" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Přidat přístupový klíč" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Přidat reakci" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Přidat do slovníku" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Přidat k oblíbeným" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Přidáno k oblíbeným GIFům" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Přidáno k oblíbeným" @@ -3296,11 +3296,11 @@ msgstr "Přidáno k oblíbeným" msgid "Added to saved media" msgstr "Přidáno k uloženým médiím" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Přidáno: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Přidáno: {createdDate} • naposledy použito: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Všechny jazyky" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Všechny zprávy" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Již smazáno" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Už máte účet?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Přiblížení aplikace" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Úroveň přiblížení aplikace" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Schválit" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Schvalte tuto aplikaci z aplikace {productName}, kterou již používáte. Heslo není potřeba." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Opravdu chcete smazat kategorii „{categoryName}“? Tuto akci nelze vrátit zpět." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Opravdu chcete smazat přístupový klíč <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Opravdu chcete smazat tuto přílohu? Tuto akci nelze vrátit zpět a p msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Opravdu chcete smazat tuto komunitu? Tuto akci nelze vrátit zpět. Všechny kanály, zprávy a nastavení budou trvale smazány." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Opravdu chcete smazat tento přístupový klíč?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Zeptat se před zahájením hovorů" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Požádat o přístupový klíč po zadání hesla při přihlašování" @@ -4690,7 +4690,7 @@ msgstr "Přílohy" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Zvuk" @@ -4851,14 +4851,14 @@ msgstr "Ověřování" msgid "Authenticator" msgstr "Ověřovací aplikace" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Ověřovací aplikace" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Kód z ověřovací aplikace" @@ -4928,7 +4928,7 @@ msgstr "Autorizované aplikace" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Momentálně pryč" msgid "Back" msgstr "Zpět" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Zpět do {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Zpět na role" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Zpět do nastavení" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Zpět na přihlášení" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Záložní kód" @@ -5351,7 +5356,7 @@ msgstr "Záložní kód" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Dosažen limit záložek" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Hovory" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera vypnuta" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera zapnuta" @@ -6364,9 +6369,9 @@ msgstr "Sem nelze nahrávat soubory" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Sem nelze nahrávat soubory" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Změnit emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Změnit přezdívku přítele" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Změnit mou přezdívku ve skupině" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Změnit přezdívku" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Akce kanálu" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanál přidán k oblíbeným" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanál vytvořen" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Ladění kanálu" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanál smazán" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Záznam kanálu" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanál odebrán z oblíbených" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Vyberte barvu zvýraznění profilu" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Dokončit registraci účtu" @@ -7715,7 +7720,7 @@ msgstr "Dokončete registraci účtu a ověřte svůj e-mail, abyste mohli odes msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Dokončete registraci účtu přidáním e-mailu a hesla. Před dokončením vám pošleme ověřovací kód pro potvrzení e-mailu." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Dokončete registraci účtu, abyste mohli používat funkce zabezpečení, jako je dvoufaktorové ověřování a přístupové klíče." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Vymazat rychlé CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Vymazat hledání" @@ -8103,7 +8108,7 @@ msgstr "Klonování je vypnuto" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Zavřít" @@ -8160,11 +8165,9 @@ msgstr "Zavřít do panelu nabídek" msgid "Close to tray" msgstr "Zavřít do oznamovací oblasti" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Zavřít okno" @@ -8456,7 +8459,7 @@ msgstr "Komunikace" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Ladění komunity" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Výchozí pro komunitu" @@ -8577,7 +8580,7 @@ msgstr "Záznam člena komunity" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Členové komunity" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Úroveň oznámení komunity" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Nastavení oznámení komunity" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Porovnání" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Dokončit ověření věku pro obsah pro dospělé" @@ -9093,7 +9096,7 @@ msgstr "Připojení: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Kontextové nabídky lze otevřít levým kliknutím (na tlačítka) neb #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Pokračovat" msgid "Continue to checkout" msgstr "Pokračovat k platbě" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Pokračujte a vytvořte přístupový klíč pro {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Pokračovat v nahlášení komunity" msgid "Continue to report user" msgstr "Pokračovat v nahlášení uživatele" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Pokračovat pomocí přístupového klíče" @@ -9238,11 +9238,6 @@ msgstr "Pokračovat pomocí přístupového klíče" msgid "Continue with SSO" msgstr "Pokračovat přes SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Pokračujte pomocí svého přístupového klíče a přihlaste se na {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Koordinuje nájezdy, hromadné útoky nebo obtěžování lidí či komu #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Zkopírováno" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kopírovat ID kategorie" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kopírovat ID kanálu" @@ -9421,12 +9416,12 @@ msgstr "Kopírovat odkaz na kanál" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Kopírovat kód" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Kopírovat ID komunity" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Kopírovat URL pozvánky" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Kopírovat zprávu" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Kopírovat ID zprávy" @@ -9570,7 +9565,7 @@ msgstr "Kopírovat ID zprávy" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Kopírovat URL samolepky" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Zkopírujte klíč pro nastavení do své ověřovací aplikace." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Kopírovat ID uživatele" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Kopírovat uživatelské jméno" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Aplikaci se nepodařilo smazat" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Nepodařilo se smazat přístupový klíč" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Nepodařilo se odeslat pozvánku" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Nepodařilo se odeslat pozvánku. Zkuste to znovu." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Nepodařilo se aktualizovat obcházení potlačení zmínek" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Nepodařilo se aktualizovat nastavení přístupových klíčů pro dvoufaktorové ověřování" @@ -10206,6 +10201,11 @@ msgstr "Nepodařilo se aktualizovat alternativní text. Zkuste to prosím znovu. msgid "Couldn't update voice activity sharing right now" msgstr "Teď se nepodařilo aktualizovat sdílení hlasové aktivity" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Nepodařilo se aktualizovat váš přístupový klíč. Zkuste to znovu." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Nepodařilo se nahrát avatar" msgid "Couldn't upload banner" msgstr "Nepodařilo se nahrát banner" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Přístupový klíč se ve vyskakovacím okně nepodařilo použít. Zkuste to znovu." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Kód se nepodařilo ověřit. Zkuste to znovu." msgid "Couldn't verify the connection" msgstr "Nepodařilo se ověřit propojení" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Ověření pomocí přístupového klíče se nezdařilo. Zkuste to znovu." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Útulné" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Vytvořit" @@ -10298,7 +10293,7 @@ msgstr "Vytvořit novou skupinu s uživatelem {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Vytvořit aplikaci" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Vytvořit kategorii" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Vytvořit kanál" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Vytvořit komunitu" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Vlastní text upozornění" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Vlastní…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Ladění" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Ladit kanál" @@ -11164,7 +11159,7 @@ msgstr "Ladit zprávu" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Ladit uživatele" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Smazat {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Smazat účet" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Smazat aplikaci" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Smazat přílohu" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Smazat média" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Smazat zprávu" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Mazat zprávy ostatních členů. Připínání se ovládá zvlášť." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Smazat přístupový klíč" @@ -11701,7 +11696,7 @@ msgstr "Popište, o čem je vaše komunita" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Popis" @@ -11966,7 +11961,7 @@ msgstr "Zařízení:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Přímý vstup" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Přímá zpráva" @@ -12050,7 +12045,7 @@ msgstr "Náhledy přímých zpráv" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Přímé zprávy" @@ -12077,14 +12072,14 @@ msgstr "Přímé nahrávání aktivní" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Vypnout" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Deaktivovat účet" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Odpojeno" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Komunita v Objevování" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Čtyřmístný identifikátor" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Zavřít" @@ -12477,7 +12472,7 @@ msgstr "Nastavení přímých zpráv a žádostí o přátelství" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Soukromá konverzace zavřena" @@ -12607,7 +12602,7 @@ msgstr "Neblokuje. Můžete znovu otevřít později." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Doména" @@ -12697,7 +12692,7 @@ msgstr "Dvojitým kliknutím na někoho se připojíte k jeho streamu." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Nizozemština" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "např. YubiKey, iPhone, pracovní počítač" @@ -13092,7 +13087,7 @@ msgstr "Upravit globální nastavení, jako je název, popis a ikona." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Upravit skupinu" @@ -13123,7 +13118,7 @@ msgstr "Upravit média" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Upravit zprávu" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Nárok na vrácení peněz do {windowEndsOn}. Tím se také okamžitě zruší vaše předplatné." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-mail" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji aktualizováno" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emoji" @@ -13525,7 +13520,7 @@ msgstr "Oblíbené položky jsou prázdné" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Zapnout" @@ -13680,7 +13675,7 @@ msgstr "Zapnout push oznámení na mobilu" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Zapnout oznámení" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Povolte integrace, pro které jste nakonfigurovali přihlašovací údaje. Zobrazují se pouze dostupné služby." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Zapnout dvoufaktorové ověřování" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Angličtina (USA)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Vylepšené" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Zadejte nový e-mail" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Zadejte jeden ze svých záložních kódů, pokud nemůžete použít svůj přístupový klíč." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Zadejte jeden ze svých záložních kódů." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Zadejte text" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Zadejte {digitCount}místný kód ze své ověřovací aplikace nebo záložní kód." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Před pokračováním zadejte kód." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Zadejte kód ze své ověřovací aplikace." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Zadejte své jméno" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Zadejte heslo." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Platnost vypršela dne <0>{expiredDate}. <1/> již nejsou aktivní. Předplatné si můžete kdykoli znovu pořídit." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Vyprší" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Automatické doplňování výrazů" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Kategorie výběru výrazů" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Nepodařilo se připravit emoji" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Nepodařilo se zpracovat oříznutý obrázek. Zkuste to znovu." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Nepodařilo se spustit jednotné přihlášení" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Přepnutí účtu se nezdařilo" @@ -15053,7 +15048,7 @@ msgstr "Přidáno do oblíbených" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Oblíbené" @@ -15268,6 +15263,11 @@ msgstr "Dokončit nastavení účtu" msgid "Finish account setup first" msgstr "Nejprve dokončete nastavení účtu" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Dokončete to v nové kartě. Pokud jste ji zavřeli, znovu stiskněte Pokračovat pomocí přístupového klíče." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Název složky" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Nastavení složky" @@ -15479,7 +15479,7 @@ msgstr "Pro mě" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Při tomto ověření posíláte SMS vy nám, místo abyste ji od nás dostali." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Pro vaši bezpečnost prosím potvrďte, že jste to vy, abyste mohli pokračovat." @@ -15606,7 +15606,7 @@ msgstr "Zapomenuté heslo" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Zapomněli jste heslo?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Pouze přátelé a malé komunity" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Přátelé přátel" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Obecné" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Německo" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Získat {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URL adresy GIFů" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIFy" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Globální klávesová zkratka" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Zpět" @@ -16374,6 +16374,11 @@ msgstr "Zpět" msgid "Go back and enter a valid email." msgstr "Vraťte se a zadejte platný e-mail." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Pro pokračování se vraťte do aplikace {productName}." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Skrýt poznámky k vypršení platnosti" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Skrýt oblíbené" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Skrýt ztlumené" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Skrýt ztlumené kanály" @@ -17358,7 +17363,7 @@ msgstr "Identita" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Neaktivní" @@ -17818,7 +17823,7 @@ msgstr "Nevhodný profil" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Doručené" @@ -17867,7 +17872,7 @@ msgstr "Zadejte ID komunity." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Náhled stránky s pozvánkou" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Pozvat lidi" @@ -18456,7 +18461,7 @@ msgstr "Autor pozvánky:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Pozvánky" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Připojit se k hovoru" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Připojit se ke komunitě" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Registrace ve službě {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Přejít" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Vyhodit člena z této komunity." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Vyhodit člena" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Opustit hovor" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Opustit komunitu" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Tvůrce odkazů" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Odkaz zkopírován do schránky" @@ -19859,8 +19864,8 @@ msgstr "Malware nebo nebezpečné odkazy" msgid "Malware, credential theft, or harmful files." msgstr "Malware, krádež přihlašovacích údajů nebo škodlivé soubory." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Spravovat" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Spravovat účty" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Spravujte aplikace a zařízení, která mají přístup k vašemu účtu" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Označit všechny nepřečtené kanály v doručených zprávách jako přečtené ihned, bez potvrzení" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Označit jako přečtené" @@ -20021,7 +20026,7 @@ msgstr "Označit jako spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Označit jako nepřečtené" @@ -20169,7 +20174,7 @@ msgstr "Komunita pro dospělé" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Obsah pro dospělé" @@ -20315,7 +20320,7 @@ msgstr "Měření…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "členové" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Členové" @@ -20616,7 +20621,7 @@ msgstr "Zmínit tuto roli?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Zmínky" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Další akce s médii" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Další možnosti" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Ztlumit hovory" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Ztlumit kategorii" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Ztlumit komunity" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Ztlumit komunitu" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Vypnout zvuk při vstupu" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Ztlumit oblíbené" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Název musí mít alespoň 2 znaky" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Pojmenovat přístupový klíč" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formulář pro pojmenování přístupového klíče" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Potřebujete účet?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Nikdy" @@ -22276,7 +22281,7 @@ msgstr "Nejnovější nahoře" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Další" @@ -22905,7 +22910,7 @@ msgstr "Žádní uživatelé nenalezeni" msgid "No verification is required." msgstr "Ověření není vyžadováno." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Nejsou k dispozici žádné metody ověření" @@ -23038,11 +23043,13 @@ msgstr "Stránka nenalezena" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Teď ne" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Poznámka (viditelná jen pro vás)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Nic" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Vlastní nastavení oznámení" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Nastavení oznámení" @@ -23152,7 +23159,7 @@ msgstr "Hlasitost oznámení" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Vypnuto" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "OK" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Změnit to mohou jen členové s oprávněním „{manageCommunityPermissionLabel}“." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Pouze zmínky" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Otevřít {labelText} v nastavení" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Otevřít {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Otevřené soukromé konverzace" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Otevřít soukromou konverzaci" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Otevřít fakturu {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Otevřít odkaz" @@ -23850,7 +23857,7 @@ msgstr "Otevřít rychlé přepínání" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Otevřít nastavení" @@ -23935,11 +23942,6 @@ msgstr "Otevřít studio motivů v samostatném okně" msgid "Open theme studio…" msgstr "Otevřít studio motivů…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Otevřete toto okno z aplikace {productName} a použijte svůj přístupový klíč." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Možnosti" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Přístupový klíč" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Název přístupového klíče" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Přístupový klíč aktualizován" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Přístupové klíče" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Přístupové klíče vyžadují podepsaný balíček macOS s platným identifikátorem aplikace. Nainstalujte podepsaného desktopového klienta a zkuste to znovu." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Heslo" msgid "Password changed" msgstr "Heslo změněno" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Správci hesel nemusí na této adrese nabízet váš přístupový klíč. Zkuste to místo toho ve vyskakovacím okně na staré adrese." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Vložte odkaz na zprávu." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Osobní slovník" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Osobní poznámky" @@ -24885,7 +24887,7 @@ msgstr "Připnout skupinovou konverzaci" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Připnout zprávu" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "připnuto" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Připnutá soukromá konverzace" @@ -25020,7 +25022,7 @@ msgstr "Správce platformy" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Přehrát" @@ -25318,6 +25320,11 @@ msgstr "Pro přiřazení stiskněte klávesu, tlačítko myši nebo tlačítko g msgid "Press a shortcut…" msgstr "Stiskněte zkratku…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Stisknutím tlačítka Pokračovat použijete svůj přístupový klíč." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Hlavní jazyk" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Hlavní navigace" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Zásady ochrany osobních údajů" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Nastavení soukromí" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Tip:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Pokračovat" @@ -26090,7 +26097,7 @@ msgstr "Reagovat pomocí {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Opětovné vygenerování zneplatní aktuální token. Aktualizujte veškerý kód, který používá starou hodnotu." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registrovat se" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Registrované přístupové klíče" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Odebrat banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Odebrat záložku" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Odebrat ze slovníku" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Odebrat z oblíbených" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Odebráno z oblíbených GIFů" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Odebráno z oblíbených" @@ -27032,7 +27039,7 @@ msgstr "Odebrání oprávnění může omezit funkce bota." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Zrušení dočasného omezení umožní uživateli <0>{targetUserTag} znovu posílat zprávy, reagovat a připojovat se k hlasovým kanálům." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Přejmenovat" @@ -27119,7 +27126,7 @@ msgstr "Odpovědi" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Odpovědět" @@ -27209,7 +27216,7 @@ msgstr "Nahlásit problém" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Nahlásit zprávu" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Vyžadovat dvoufaktorové ověřování pro moderátorské zásahy" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Vyžadovat přístupový klíč jako druhý faktor" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Odkaz pro obnovení je neplatný nebo vypršela jeho platnost" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Resetovat stav souhlasu s obsahem pro dospělé" @@ -27880,7 +27887,7 @@ msgstr "Vyhledávání podle obrázku" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Vyhledávání podle obrázku" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Zkontrolovat a potvrdit" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Prohlédněte si aplikace, které mají přístup k vašemu účtu." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Zkontrolovat minulé nákupy a možnosti vrácení peněz" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Prohlédněte si přihlášená zařízení a odhlašte relace, které nepoznáváte." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Role aktualizována" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Role" @@ -28261,7 +28268,7 @@ msgstr "Sytost" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Rozsah" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Oprávnění" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Čtečka obrazovky" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Hledat kanály, lidi nebo komunity" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Hledat přátele" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Vyhledat vybraný text" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Hledat v nastavení" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Hledat v nastavení…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Zabezpečení" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Funkce zabezpečení" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Bezpečnostní klíč" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Bezpečnostní klíč / přístupový klíč" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Citlivá média" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Odesláno" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Relace" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Relace pro {identifier} vypršela. Přihlaste se znovu." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Nastaví hlasitost všech zvukových efektů. Zvuky s vlastní nastavenou hlasitostí se touto hodnotou neřídí." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Nastavení otevřeno." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Sekce nastavení" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Postranní panel" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Přihlásit se" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Přihlaste se a převezměte si dárek" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Přihlásit se přes prohlížeč" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Přihlásit se pomocí přístupového klíče" @@ -30666,7 +30673,7 @@ msgstr "Přihlaste se pomocí poskytovatele jednotného přihlášení vaší or #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Odhlásit se" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Přihlašovací údaje" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Průběh přihlášení" @@ -31189,7 +31196,7 @@ msgstr "Některé uživatele nelze přidat" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Něco se pokazilo" @@ -31374,7 +31381,7 @@ msgstr "Hlasitost zvuku" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Zvuky" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Začít nahrávat přílohy hned po přidání do pole pro psaní zprávy" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Zahájit videohovor" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Zahájit hlasový hovor" @@ -31899,7 +31906,7 @@ msgstr "samolepka" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Samolepka: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Samolepky" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Přestat důvěřovat všem odkazům?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Přestat používat přístupové klíče pro dvoufaktorové ověřování?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Potlačit všechny zmínky rolí" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Skrýt vložený obsah" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "textový kanál" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Textový kanál" @@ -33055,7 +33062,7 @@ msgstr "Pošlete nám SMS ze svého telefonu" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Převod textu na řeč" @@ -33119,6 +33126,11 @@ msgstr "Operace se nedokončila. Některé komunity jste již mohli opustit a v msgid "That did not go through. Nothing changed. Try again." msgstr "Nepodařilo se to provést. Nic se nezměnilo. Zkuste to znovu." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "To nefungovalo. Zkuste to znovu nebo zrušte." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Nevypadá to jako platná barva. Zkuste hex, rgb(), hsl() nebo název barvy CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Tento obrázek nebylo možné použít. Zkuste jiný soubor." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Obrázek je neplatný. Zkuste jiný." @@ -34035,11 +34047,11 @@ msgstr "Toto je popis druhé možnosti" msgid "This is the third option description" msgstr "Toto je popis třetí možnosti" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Toto je váš poslední přístupový klíč a přístupové klíče jsou vaším druhým faktorem. Jeho smazáním vypnete na svém účtu dvoufaktorové ověřování a vaše stávající záložní kódy přestanou fungovat." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Toto je váš poslední přístupový klíč. Jakmile o něj přijdete, nebudete moci používat přístupový klíč jako druhý faktor." @@ -34154,16 +34166,6 @@ msgstr "Tento účastník má vypnutý zvuk" msgid "This participant was deafened by moderators" msgstr "Moderátoři tomuto účastníkovi vypnuli zvuk" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Tento požadavek na přístupový klíč nebylo možné ověřit. Zavřete toto okno a zkuste to znovu." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Platnost této žádosti o přístupový klíč vypršela. Zavřete toto okno a zkuste to znovu." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Tím se odstraní všechny důvěryhodné domény. Znovu se vám bude zo msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Tímto se odstraní všechny vlastní zkratky a znovu se povolí všechny vestavěné zkratky. Tuto akci nelze vrátit zpět." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Platnost tohoto požadavku vypršela. Vraťte se a zkuste to znovu." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Platnost tohoto odkazu pro obnovení vypršela. Odkazy pro obnovení platí 1 hodinu. Požádejte prosím o nový." @@ -34807,7 +34814,7 @@ msgstr "Předat vlastnictví skupiny uživateli {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Převést vlastnictví" @@ -34823,7 +34830,7 @@ msgstr "Vlastnictví bylo převedeno na {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Přeložit" @@ -34980,7 +34987,7 @@ msgstr "Zkuste jiný název proměnné nebo vymažte hledání." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Zkusit znovu" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Zkusit znovu" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Zkuste to znovu za chvíli." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Zkuste hledat něco jako \"motiv\", \"oznámení\" nebo \"soukromí\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Zkusit místo toho bezpečnostní klíč / přístupový klíč" @@ -35088,7 +35095,7 @@ msgstr "Turečtina" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Vypnout" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Vypněte sdílení zvuku pro tento zdroj nebo to zkuste za chvíli znovu." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Vypnout kameru" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Před zobrazením přihlašovacích údajů nebo podrobností o zabezpečení účtu vypněte soukromí při streamování." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Zapnout" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Dvoufaktorové ověřování" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Dvoufaktorové ověřování" @@ -35288,7 +35295,7 @@ msgstr "Dvoufaktorové ověřování vypnuto" msgid "Two-factor authentication enabled" msgstr "Dvoufaktorové ověřování zapnuto" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Dvoufaktorové ověřování je zapnuté" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Odblokovat uživatele" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Nekategorizováno" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Podtrhávat odkazy na webové stránky" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Rozumím" @@ -35643,7 +35650,7 @@ msgstr "Univerzální záložní volba. Nejnižší kvalita, ale funguje všude. #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Zapnout mikrofony na všech zařízeních" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Zrušit ztlumení kategorie" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Zrušit ztlumení komunit" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Zrušit ztlumení komunity" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Zrušit ztlumení soukromých konverzací" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Zrušit ztlumení oblíbených" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Odepnout" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Odepnout zprávu" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Odepnout tuto zprávu?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Soukromá konverzace odepnuta" @@ -36193,6 +36200,11 @@ msgstr "Aktualizovat e-mail" msgid "Update my status" msgstr "Aktualizovat můj stav" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Aktualizovat přístupový klíč" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Upravit dočasné omezení" msgid "Update your own nickname." msgstr "Upravit vlastní přezdívku." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Aktualizujte svůj přístupový klíč" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Použijte speciální okno k nastavení data, od kterého se bude zobraz msgid "Use a different email address and verify it with a code." msgstr "Použijte jinou e-mailovou adresu a ověřte ji kódem." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Použít přístupový klíč ze správce hesel" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Použít skutečnou hodnotu" msgid "Use alternative method" msgstr "Použít jinou metodu" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Používejte ověřovací aplikaci ke generování kódů pro dvoufaktorové ověřování" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Použijte pouze v případě, že jasně porušuje pravidla {productName} a nespadá do výše uvedených kategorií." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Použít přístupové klíče pro dvoufaktorové ověřování?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Používejte přístupové klíče k přihlášení bez hesla" @@ -36824,8 +36836,8 @@ msgstr "Používat hlasovou aktivitu" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Použijte kontrolu pravopisu vašeho operačního systému, pokud je k dispozici. Jinak použijte vestavěné slovníky {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Použijte svůj přístupový klíč" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Ovládání uživatele" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Ladění uživatele" @@ -36972,7 +36984,7 @@ msgstr "Hlasitost uživatele" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Ověření zrušeno" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Ověřovací kód" @@ -37185,7 +37197,7 @@ msgstr "Ověřovací e-mail byl odeslán. Zkontrolujte si doručenou poštu." msgid "Verification expired" msgstr "Ověření vypršelo" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Ověřená komunita" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Ověřit" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Ověřit propojení" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Ověřit e-mail" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formulář pro ověření identity" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Ověřte, že jste to vy" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Ověřte svou e-mailovou adresu, abyste mohli posílat žádosti o přátelství." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Před přidáním přístupového klíče ověřte svůj e-mail." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Před přidáním ověřovací aplikace si ověřte svůj e-mail." @@ -37571,7 +37583,7 @@ msgstr "Zobrazit a spravovat zabanované uživatele." msgid "View and manage every webhook configured across your community." msgstr "Zobrazte a spravujte všechny webhooky nakonfigurované v rámci vaší komunity." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Zobrazit a spravovat záložní kódy pro obnovení účtu" @@ -37605,7 +37617,7 @@ msgstr "Zobrazit kanál" msgid "View channel members" msgstr "Zobrazit členy kanálu" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Zobrazit kódy" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Zobrazit tarify" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Zobrazit profil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "hlasový kanál" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Hlasový kanál" @@ -38073,7 +38085,7 @@ msgstr "Zrušeno" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Počkejte zde" msgid "Waiting for connection..." msgstr "Čekání na připojení..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Čekání na přístupový klíč…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Sledovat" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Sledovat stream" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Náhledy webových stránek" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Vítejte zpět" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Momentálně nejste v žádné komunitě." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Uživatele {userName} jste zablokovali. Nebudete mu moct posílat zprávy, dokud ho neodblokujete." @@ -39101,6 +39113,11 @@ msgstr "Smazání účtu můžete zrušit do 14 dnů" msgid "You can close this modal. The import will continue in the background." msgstr "Můžete zavřít toto okno. Import bude pokračovat na pozadí." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Tuto kartu můžete zavřít" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Nyní můžete zavřít tuto kartu a vrátit se do aplikace." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Nemůžete si poslat žádost o přátelství sami sobě." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "V tomto kanálu nemůžete odesílat zprávy." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Stále bude potřeba dokončit krok s e-mailem." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Už nebudete po zadání hesla vyzváni k použití přístupového klíče. Vaše ověřovací aplikace zůstane vaším druhým faktorem." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Budete se muset znovu přihlásit na všech odhlášených zařízeních" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "K přihlášení na novém zařízení budete potřebovat jeden ze svých přístupových klíčů. Pokud přijdete o všechny přístupové klíče, můžete nenávratně ztratit přístup ke svému účtu. Záložní kódy vám uložíme, abyste se do svého účtu stále mohli dostat." @@ -39918,12 +39935,12 @@ msgstr "Váš účet je příliš nový na odesílání zpráv v této komunitě msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Žádost o váš účet čeká na schválení. Přihlásit se můžete, až ji administrátor schválí." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Váš účet vyžaduje vícefaktorové ověřování, ale na tomto zařízení nejsou nastavené žádné podporované metody. Přihlaste se na zařízení s ověřovací aplikací nebo bezpečnostním klíčem, případně kontaktujte podporu." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Váš účet již nebude chráněn dvoufaktorovým ověřováním při přihlašování heslem. Také ztratíte zvýšená oprávnění v komunitách, které dvoufaktorové ověřování vyžadují." @@ -39941,16 +39958,6 @@ msgstr "Vaši akci se nepodařilo dokončit, protože byla označena našimi bez msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Vaše žádost čeká na posouzení. Stále můžete upravovat údaje v záznamu nebo žádost stáhnout." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Prohlížeč zablokoval vyskakovací okno pro přístupový klíč. Povolte pro tento web vyskakovací okna a zkuste to znovu." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Váš prohlížeč nepodporuje přístupové klíče pro tuto doménu. Aktualizujte svůj prohlížeč nebo se přihlaste pomocí hesla a dvoufaktorového kódu." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Vaše komunita musí mít alespoň {minMemberCount, plural, one {# člen msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Vaše kreditní karta byla zkontrolována. Pokud je platná, obsah pro dospělé se brzy odemkne. Můžete zavřít tuto kartu prohlížeče a vrátit se do aplikace." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Vaše zařízení vás požádá o uložení aktualizovaného přístupového klíče pro {name}. Nahradí ten starý." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Vaše zařízení vás vyzve k uložení aktualizovaného přístupového klíče pro {name}. Použijte stejný telefon nebo bezpečnostní klíč, který jste právě použili." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zvětšit" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Přiblížit" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/da/messages.po b/fluxer_app/src/features/i18n/locales/da/messages.po index 3577aa84f..9d4505a5f 100644 --- a/fluxer_app/src/features/i18n/locales/da/messages.po +++ b/fluxer_app/src/features/i18n/locales/da/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {medlem} other {medlemmer}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# omtale} other {# omtaler}}" @@ -2370,8 +2370,8 @@ msgstr "6 måneder" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-cifret kode" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Tvungne konto- og premiumindstillinger" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Kontoadgang" @@ -2807,7 +2807,7 @@ msgstr "Aktiv månedlig abonnent (opsigelse planlagt)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Tilføj en konto for at fortsætte." msgid "Add an email and password to your account first." msgstr "Tilføj først en e-mailadresse og en adgangskode til din konto." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Tilføj et ekstra sikkerhedslag til din konto" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Føj bot til en destination" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Tilføj kanal" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Tilføj nye reaktioner til beskeder." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Tilføj note" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Tilføj tilpassede tilladelser" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Tilføj adgangsnøgle" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Tilføj reaktion" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Føj til ordbog" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Føj til favoritter" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Føjet til GIF-favoritter" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Føjet til favoritter" @@ -3296,11 +3296,11 @@ msgstr "Føjet til favoritter" msgid "Added to saved media" msgstr "Føjet til gemte medier" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Tilføjet: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Tilføjet: {createdDate} • sidst brugt: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Alle sprog" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Alle beskeder" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Allerede slettet" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Har du allerede en konto?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Appzoom" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Appens zoomniveau" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Godkend" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Godkend denne app fra din eksisterende {productName}-app. Ingen adgangskode nødvendig." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Er du sikker på, at du vil slette kategorien \"{categoryName}\"? Dette kan ikke fortrydes." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Er du sikker på, at du vil slette adgangsnøglen <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Er du sikker på, at du vil slette denne vedhæftede fil? Denne handling msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Er du sikker på, at du vil slette dette fællesskab? Denne handling kan ikke fortrydes. Alle kanaler, beskeder og indstillinger slettes permanent." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Er du sikker på, at du vil slette denne adgangsnøgle?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Spørg, før du starter opkald" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Bed om en adgangsnøgle efter din adgangskode, når du logger ind" @@ -4690,7 +4690,7 @@ msgstr "Vedhæftede filer" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Lyd" @@ -4851,14 +4851,14 @@ msgstr "Godkendelse" msgid "Authenticator" msgstr "Godkendelsesapp" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Godkendelsesapp" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Kode fra godkendelsesapp" @@ -4928,7 +4928,7 @@ msgstr "Autoriserede apps" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Ikke til stede lige nu" msgid "Back" msgstr "Tilbage" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Tilbage til {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Tilbage til roller" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Tilbage til indstillinger" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Tilbage til login" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Backupkode" @@ -5351,7 +5356,7 @@ msgstr "Backupkode" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Grænsen for gemte beskeder er nået" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Opkald" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera fra" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera til" @@ -6364,9 +6369,9 @@ msgstr "Kan ikke uploade filer her" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Kan ikke uploade filer her" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Skift emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Skift vens kaldenavn" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Skift mit kaldenavn i gruppen" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Skift kaldenavn" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Kanalhandlinger" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanal føjet til favoritter" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanal oprettet" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Fejlfinding af kanal" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanal slettet" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Kanalpost" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanal fjernet fra favoritter" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Vælg din profils accentfarve" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Fuldfør kontooprettelsen" @@ -7715,7 +7720,7 @@ msgstr "Fuldfør oprettelsen af din konto, og bekræft din e-mailadresse for at msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Fuldfør oprettelsen af din konto ved at tilføje en e-mailadresse og en adgangskode. Vi sender en kode for at bekræfte din e-mailadresse, før oprettelsen afsluttes." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Fuldfør oprettelsen af din konto for at få adgang til sikkerhedsfunktioner som tofaktorgodkendelse og adgangsnøgler." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Ryd hurtig CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Ryd søgning" @@ -8103,7 +8108,7 @@ msgstr "Kloning er slået fra" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Luk" @@ -8160,11 +8165,9 @@ msgstr "Luk til menulinjen" msgid "Close to tray" msgstr "Luk til systembakken" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Luk vindue" @@ -8456,7 +8459,7 @@ msgstr "Kommunikation" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Fejlfinding for fællesskab" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Fællesskabets standardindstilling" @@ -8577,7 +8580,7 @@ msgstr "Post for fællesskabsmedlem" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Fællesskabsmedlemmer" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Notifikationsniveau for fællesskab" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Notifikationsindstillinger for fællesskabet" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Sammenligning" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Gennemfør adgangsbekræftelsen for indhold for voksne" @@ -9093,7 +9096,7 @@ msgstr "Forbindelse: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Genvejsmenuer kan åbnes med venstreklik (på knapper) eller højreklik #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Fortsæt" msgid "Continue to checkout" msgstr "Fortsæt til betaling" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Fortsæt for at oprette en adgangsnøgle til {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Fortsæt med at anmelde fællesskab" msgid "Continue to report user" msgstr "Fortsæt med at anmelde bruger" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Fortsæt med adgangsnøgle" @@ -9238,11 +9238,6 @@ msgstr "Fortsæt med adgangsnøgle" msgid "Continue with SSO" msgstr "Fortsæt med SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Fortsæt med din adgangsnøgle for at logge ind på {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Koordinerer raids, organiserede angreb eller chikane mod personer eller #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Kopieret" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kopiér kategori-id" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kopiér kanal-ID" @@ -9421,12 +9416,12 @@ msgstr "Kopiér kanallink" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Kopiér kode" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Kopiér fællesskabs-ID" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Kopiér invitationslink" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Kopiér besked" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Kopiér besked-ID" @@ -9570,7 +9565,7 @@ msgstr "Kopiér besked-ID" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Kopiér klistermærke-URL" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Kopiér opsætningsnøglen ind i din godkendelsesapp." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Kopiér bruger-id" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Kopiér brugernavn" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Kunne ikke slette appen" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Kunne ikke slette adgangsnøgle" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Kunne ikke sende invitation" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Kunne ikke sende invitation. Prøv igen." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Kunne ikke opdatere tilsidesættelsen af undertrykkelse af omtaler" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Kunne ikke opdatere tofaktorgodkendelse med adgangsnøgle" @@ -10206,6 +10201,11 @@ msgstr "Kunne ikke opdatere den alternative tekst. Prøv igen." msgid "Couldn't update voice activity sharing right now" msgstr "Kunne ikke opdatere deling af taleaktivitet lige nu" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Kunne ikke opdatere din adgangsnøgle. Prøv igen." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Kunne ikke uploade avatar" msgid "Couldn't upload banner" msgstr "Kunne ikke uploade banner" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Din adgangsnøgle kunne ikke bruges i pop op-vinduet. Prøv igen." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Kunne ikke bekræfte koden. Prøv igen." msgid "Couldn't verify the connection" msgstr "Kunne ikke bekræfte forbindelsen" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Kunne ikke bekræfte med adgangsnøgle. Prøv igen." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Hyggelig" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Opret" @@ -10298,7 +10293,7 @@ msgstr "Opret en ny gruppe med {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Opret app" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Opret kategori" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Opret kanal" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Opret fællesskab" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Tilpasset advarselstekst" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Tilpasset…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Fejlfinding" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Fejlfind kanal" @@ -11164,7 +11159,7 @@ msgstr "Fejlfind besked" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Fejlfind bruger" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Slet {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Slet konto" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Slet app" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Slet vedhæftet fil" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Slet medier" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Slet besked" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Slet andre medlemmers beskeder. Fastgørelse styres separat." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Slet adgangsnøgle" @@ -11701,7 +11696,7 @@ msgstr "Beskriv, hvad dit fællesskab handler om" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Beskrivelse" @@ -11966,7 +11961,7 @@ msgstr "Enhed:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Direkte input" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Direkte besked" @@ -12050,7 +12045,7 @@ msgstr "Forhåndsvisninger af direkte beskeder" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Direkte beskeder" @@ -12077,14 +12072,14 @@ msgstr "Direkte upload aktiv" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Deaktiver" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Deaktiver konto" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Afbrudt" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Fællesskab i Opdag" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Tag" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Luk" @@ -12477,7 +12472,7 @@ msgstr "Indstillinger for DM og venneanmodninger" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM lukket" @@ -12607,7 +12602,7 @@ msgstr "Blokerer ikke. Du kan genåbne senere." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domæne" @@ -12697,7 +12692,7 @@ msgstr "Dobbeltklik på en person for at se vedkommendes stream." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Nederlandsk" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "f.eks. YubiKey, iPhone, arbejdscomputer" @@ -13092,7 +13087,7 @@ msgstr "Rediger globale indstillinger som navn, beskrivelse og ikon." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Rediger gruppe" @@ -13123,7 +13118,7 @@ msgstr "Rediger medie" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Rediger besked" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Kan refunderes indtil {windowEndsOn}. Dette afslutter også dit abonnement med det samme." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-mail" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji opdateret" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojis" @@ -13525,7 +13520,7 @@ msgstr "Tomme favoritter" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Slå til" @@ -13680,7 +13675,7 @@ msgstr "Slå push-notifikationer til på mobilen" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Slå notifikationer til" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Aktivér de integrationer, hvis legitimationsoplysninger du har konfigureret. Kun tilgængelige tjenester vises." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Slå tofaktorgodkendelse til" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Engelsk (USA)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Forbedret" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Indtast ny e-mailadresse" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Indtast en af dine backupkoder, hvis du ikke kan bruge din adgangsnøgle." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Indtast en af dine backupkoder." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Skriv tekst" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Indtast den {digitCount}-cifrede kode fra din godkendelsesapp eller en backupkode." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Indtast koden, før du fortsætter." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Indtast koden fra din godkendelsesapp." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Indtast dit navn" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Indtast din adgangskode." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Udløb den <0>{expiredDate}. <1/> er ikke længere aktive. Du kan abonnere igen når som helst." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Udløber" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Autoudfyldelse af udtryk" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Kategorier for udtryksvælger" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Kunne ikke forberede emojis" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Kunne ikke behandle det beskårede billede. Prøv igen." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Kunne ikke starte SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Kunne ikke skifte konto" @@ -15053,7 +15048,7 @@ msgstr "Favoritter" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favoritter" @@ -15268,6 +15263,11 @@ msgstr "Fuldfør kontooprettelsen" msgid "Finish account setup first" msgstr "Fuldfør først kontooprettelsen" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Afslut i den nye fane. Hvis du lukkede den, skal du trykke på Fortsæt med adgangsnøgle igen." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Mappenavn" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Mappeindstillinger" @@ -15479,7 +15479,7 @@ msgstr "Til mig" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Til dette tjek sender du os en sms i stedet for at modtage en fra os." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Af hensyn til din sikkerhed skal du bekræfte, at det er dig, for at fortsætte." @@ -15606,7 +15606,7 @@ msgstr "Glemt adgangskode" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Glemt din adgangskode?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Kun venner og små fællesskaber" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Venner af venner" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Generelt" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Tyskland" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Få {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF-webadresser" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF'er" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Global genvej" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Gå tilbage" @@ -16374,6 +16374,11 @@ msgstr "Gå tilbage" msgid "Go back and enter a valid email." msgstr "Gå tilbage, og indtast en gyldig e-mailadresse." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Gå tilbage til {productName} for at fortsætte." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Skjul udløbsnoter" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Skjul favoritter" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Skjul lydløse" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Skjul kanaler, der er sat på lydløs" @@ -17358,7 +17363,7 @@ msgstr "Identitet" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inaktiv" @@ -17818,7 +17823,7 @@ msgstr "Upassende profil" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Indbakke" @@ -17867,7 +17872,7 @@ msgstr "Inkluder fællesskabs-id'et." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Forhåndsvisning af invitationsside" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Inviter folk" @@ -18456,7 +18461,7 @@ msgstr "Inviteret af:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Invitationer" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Deltag i opkald" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Bliv medlem af fællesskabet" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Blev medlem af {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Gå til" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Fjern et medlem fra dette fællesskab." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Fjern medlem fra fællesskab" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Forlad opkald" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Forlad fællesskab" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Linkbygger" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Link kopieret til udklipsholder" @@ -19859,8 +19864,8 @@ msgstr "Malware eller farlige links" msgid "Malware, credential theft, or harmful files." msgstr "Malware, tyveri af loginoplysninger eller skadelige filer." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Administrer" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Administrer konti" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Administrer apps og enheder, der har adgang til din konto" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Markér alle ulæste indbakkekanaler som læst med det samme, uden at spørge om bekræftelse" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Markér som læst" @@ -20021,7 +20026,7 @@ msgstr "Markér som spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Markér som ulæst" @@ -20169,7 +20174,7 @@ msgstr "Fællesskab med indhold for voksne" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Indhold for voksne" @@ -20315,7 +20320,7 @@ msgstr "Måler…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "medlemmer" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Medlemmer" @@ -20616,7 +20621,7 @@ msgstr "Vil du omtale denne rolle?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Omtaler" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Flere mediehandlinger" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Flere valgmuligheder" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Slå opkald fra" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Sæt kategori på lydløs" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Sæt fællesskaber på lydløs" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Sæt fællesskab på lydløs" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Slå ankomstlyd fra" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Sæt favoritter på lydløs" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Navnet skal være på mindst 2 tegn" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Navngiv adgangsnøgle" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formular til navngivning af adgangsnøgle" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Har du brug for en konto?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Aldrig" @@ -22276,7 +22281,7 @@ msgstr "Nyeste først" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Næste" @@ -22905,7 +22910,7 @@ msgstr "Ingen brugere fundet" msgid "No verification is required." msgstr "Ingen bekræftelse er påkrævet." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Ingen bekræftelsesmetoder tilgængelige" @@ -23038,11 +23043,13 @@ msgstr "Ikke fundet" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Ikke nu" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Note (kun synlig for dig)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Ingen" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Tilpassede notifikationer" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Notifikationsindstillinger" @@ -23152,7 +23159,7 @@ msgstr "Notifikationslydstyrke" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Fra" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "OK" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Kun medlemmer med tilladelsen \"{manageCommunityPermissionLabel}\" kan ændre dette." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Kun omtaler" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Åbn {labelText} i indstillingerne" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Åbn {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Åbne direkte beskeder" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Åbn direkte besked" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Åbn faktura {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Åbn link" @@ -23850,7 +23857,7 @@ msgstr "Åbn hurtigskifter" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Åbn indstillinger" @@ -23935,11 +23942,6 @@ msgstr "Åbn temastudiet i et separat vindue" msgid "Open theme studio…" msgstr "Åbn temastudiet…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Åbn dette vindue fra {productName} for at bruge din adgangsnøgle." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Indstillinger" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Adgangsnøgle" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Navn på adgangsnøgle" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Adgangsnøgle opdateret" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Adgangsnøgler" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Adgangsnøgler kræver en signeret macOS-apppakke med et gyldigt app-id. Installer den signerede computerapp, og prøv igen." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Adgangskode" msgid "Password changed" msgstr "Adgangskode ændret" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Adgangskodeadministratorer tilbyder muligvis ikke din adgangsnøgle på denne webadresse. Prøv i stedet i et pop op-vindue på den gamle adresse." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Indsæt linket til beskeden." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Personlig ordbog" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Personlige noter" @@ -24885,7 +24887,7 @@ msgstr "Fastgør gruppe-DM" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Fastgør besked" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "fastgjort" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Fastgjort direkte besked" @@ -25020,7 +25022,7 @@ msgstr "Platformadministrator" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Afspil" @@ -25318,6 +25320,11 @@ msgstr "Tryk på en tast, museknap eller controllerknap for at tilknytte den som msgid "Press a shortcut…" msgstr "Tryk på en genvej…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Tryk på Fortsæt for at bruge din adgangsnøgle." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Primært sprog" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Primær navigation" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Fortrolighedspolitik" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Privatlivsindstillinger" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Godt tip:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Fortsæt" @@ -26090,7 +26097,7 @@ msgstr "Reager med {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Hvis du genererer et nyt token, bliver det nuværende ugyldigt. Opdater al kode, der bruger den gamle værdi." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registrer" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Registrerede adgangsnøgler" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Fjern banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Fjern fra gemte beskeder" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Fjern fra ordbog" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Fjern fra favoritter" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Fjernet fra GIF-favoritter" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Fjernet fra favoritter" @@ -27032,7 +27039,7 @@ msgstr "Fjernelse af tilladelser kan begrænse bottens funktioner." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Når timeouten fjernes, kan <0>{targetUserTag} igen sende beskeder, reagere og deltage i talekanaler." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Omdøb" @@ -27119,7 +27126,7 @@ msgstr "Svar" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Svar" @@ -27209,7 +27216,7 @@ msgstr "Rapportér problem" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Anmeld besked" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Kræv 2FA for moderatorhandlinger" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Kræv en adgangsnøgle som din anden faktor" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Nulstillingslinket er ugyldigt eller udløbet" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Nulstil accept af indhold for voksne" @@ -27880,7 +27887,7 @@ msgstr "Omvendt billedsøgning" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Omvendt billedsøgning" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Gennemse og bekræft" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Gennemgå de apps, der kan få adgang til din konto." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Gennemgå tidligere køb og refusionsmuligheder" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Gennemgå de enheder, hvor du er logget ind, og afbryd sessioner, du ikke genkender." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rolle opdateret" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Roller" @@ -28261,7 +28268,7 @@ msgstr "Mætning" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Søgeområde" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Adgangsområder" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Skærmlæser" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Søg efter kanaler, personer eller fællesskaber" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Søg venner" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Søg efter markeret tekst" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Søg i indstillinger" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Søg i indstillinger…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Sikkerhed" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Sikkerhedsfunktioner" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Sikkerhedsnøgle" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Sikkerhedsnøgle/adgangsnøgle" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Følsomme medier" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Sendt" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Session" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Sessionen er udløbet for {identifier}. Log ind igen." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Indstiller niveauet for alle lydeffekter. Individuelle lydindstillinger tilsidesætter dette." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Indstillinger åbnet." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Indstillingssektioner" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Sidepanel" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Log ind" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Log ind for at modtage din gave" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Log ind via browser" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Log ind med en adgangsnøgle" @@ -30666,7 +30673,7 @@ msgstr "Log ind med din organisations udbyder af single sign-on." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Log ud" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Loginoplysninger" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Loginforløb" @@ -31189,7 +31196,7 @@ msgstr "Nogle brugere kan ikke tilføjes" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Der opstod en fejl" @@ -31374,7 +31381,7 @@ msgstr "Lydstyrke" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Lyde" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Begynd at uploade vedhæftede filer, så snart de er tilføjet i beskedfeltet" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Start videoopkald" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Start taleopkald" @@ -31899,7 +31906,7 @@ msgstr "klistermærke" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Klistermærke: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Klistermærker" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Stop med at stole på alle links?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Vil du stoppe med at bruge adgangsnøgler til tofaktorgodkendelse?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Undertryk alle rolleomtaler" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Skjul indlejringer" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "tekstkanal" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Tekstkanal" @@ -33055,7 +33062,7 @@ msgstr "Send os en sms fra din telefon" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Tekst til tale" @@ -33119,6 +33126,11 @@ msgstr "Handlingen blev ikke fuldført. Du kan allerede have forladt nogle fæll msgid "That did not go through. Nothing changed. Try again." msgstr "Det gik ikke igennem. Intet er ændret. Prøv igen." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Det virkede ikke. Prøv igen eller annuller." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Det ligner ikke en gyldig farve. Prøv hex, rgb(), hsl() eller et CSS-farvenavn." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Det billede kunne ikke bruges. Prøv en anden fil." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Billedet er ugyldigt. Prøv et andet." @@ -34035,11 +34047,11 @@ msgstr "Dette er den anden valgmuligheds beskrivelse" msgid "This is the third option description" msgstr "Dette er den tredje valgmuligheds beskrivelse" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Dette er din sidste adgangsnøgle, og adgangsnøgler er din anden faktor. Hvis du sletter den, slår du tofaktorgodkendelse fra for din konto, og dine nuværende backupkoder holder op med at virke." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Dette er din sidste adgangsnøgle. Når den er væk, kan du ikke længere bruge en adgangsnøgle som din anden faktor." @@ -34154,16 +34166,6 @@ msgstr "Lyden fra opkaldet er slået fra for denne deltager" msgid "This participant was deafened by moderators" msgstr "Denne deltager kan ikke høre opkaldet, fordi moderatorerne har slået lyden fra" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Denne anmodning om adgangsnøgle kunne ikke verificeres. Luk dette vindue, og prøv igen." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Denne anmodning om adgangsnøgle udløb. Luk dette vindue, og prøv igen." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Dette fjerner alle betroede domæner. Du vil igen se advarslen om ekster msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Dette fjerner alle tilpassede genveje og genaktiverer alle indbyggede genveje. Dette kan ikke fortrydes." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Denne anmodning er udløbet. Gå tilbage og prøv igen." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Dette nulstillingslink er udløbet. Nulstillingslinks er gyldige i 1 time. Anmod venligst om et nyt." @@ -34807,7 +34814,7 @@ msgstr "Overfør gruppeejerskab til {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Overfør ejerskab" @@ -34823,7 +34830,7 @@ msgstr "Ejerskab overført til {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Oversæt" @@ -34980,7 +34987,7 @@ msgstr "Prøv et andet variabelnavn, eller ryd søgningen." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Prøv igen" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Prøv igen" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Prøv igen om et øjeblik." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Prøv at søge efter noget som \"tema\", \"notifikationer\" eller \"privatliv\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Prøv sikkerhedsnøgle/adgangsnøgle i stedet" @@ -35088,7 +35095,7 @@ msgstr "Tyrkisk" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Slå fra" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Slå lyddeling fra for denne kilde, eller prøv igen om et øjeblik." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Slå kamera fra" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Slå privatlivsbeskyttelse under streaming fra, før du ser login- eller kontosikkerhedsoplysninger." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Slå til" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Tofaktorgodkendelse" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Tofaktorgodkendelse" @@ -35288,7 +35295,7 @@ msgstr "Tofaktorgodkendelse deaktiveret" msgid "Two-factor authentication enabled" msgstr "Tofaktorgodkendelse aktiveret" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Tofaktorgodkendelse er aktiveret" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Fjern blokering af bruger" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Uden kategori" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Understreg webstedslinks" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Forstået" @@ -35643,7 +35650,7 @@ msgstr "Et alternativ, der virker overalt, men har den laveste kvalitet." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Slå mikrofonen til på alle enheder" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Slå lydløs fra for kategori" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Slå lydløs fra for fællesskaber" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Slå lydløs fra for fællesskab" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Slå lydløs fra for DM'er" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Slå lydløs fra for favoritter" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Fjern fastgørelse" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Fjern fastgørelse af besked" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Fjern fastgørelse af denne besked?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Fastgørelse af DM fjernet" @@ -36193,6 +36200,11 @@ msgstr "Opdater e-mail" msgid "Update my status" msgstr "Opdater min status" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Opdater adgangsnøgle" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Opdater timeout" msgid "Update your own nickname." msgstr "Opdater dit eget kaldenavn." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Opdater din adgangsnøgle" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Brug en separat dialog til at indstille en skæringsdato for beskedhisto msgid "Use a different email address and verify it with a code." msgstr "Brug en anden e-mailadresse, og bekræft den med en kode." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Brug en adgangsnøgle fra en adgangskodeadministrator" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Brug faktisk værdi" msgid "Use alternative method" msgstr "Brug en anden metode" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Brug en godkendelsesapp til at generere koder til tofaktorgodkendelse" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Brug kun, hvis det tydeligt overtræder {productName}s regler og ikke passer til ovenstående." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Vil du bruge adgangsnøgler til tofaktorgodkendelse?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Brug adgangsnøgler til at logge ind uden adgangskode" @@ -36824,8 +36836,8 @@ msgstr "Brug taleaktivitet" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Brug din computers stavekontrol, hvis den er tilgængelig. Ellers brug {productName}s ordbøger i appen." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Brug din adgangsnøgle" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Brugerindstillinger" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Fejlfinding for bruger" @@ -36972,7 +36984,7 @@ msgstr "Brugerens lydstyrke" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Bekræftelse annulleret" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Bekræftelseskode" @@ -37185,7 +37197,7 @@ msgstr "Bekræftelsesmail sendt. Tjek din indbakke." msgid "Verification expired" msgstr "Bekræftelse udløbet" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Verificeret fællesskab" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Bekræft" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Bekræft forbindelse" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Bekræft e-mail" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formular til identitetsbekræftelse" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Bekræft, at det er dig" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Bekræft din e-mailadresse for at sende venneanmodninger." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Bekræft din e-mail, før du tilføjer en adgangsnøgle." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Bekræft din e-mail, før du tilføjer en godkendelsesapp." @@ -37571,7 +37583,7 @@ msgstr "Se og administrer udelukkede brugere." msgid "View and manage every webhook configured across your community." msgstr "Se og administrer alle webhooks, der er konfigureret i dit fællesskab." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Se og administrer dine backupkoder til gendannelse af konto" @@ -37605,7 +37617,7 @@ msgstr "Se kanal" msgid "View channel members" msgstr "Se kanalmedlemmer" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Se koder" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Se abonnementer" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Se profil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "talekanal" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Talekanal" @@ -38073,7 +38085,7 @@ msgstr "Annulleret" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Vent her" msgid "Waiting for connection..." msgstr "Venter på forbindelse ..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Venter på adgangsnøgle …" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Se med" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Se stream" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Forhåndsvisninger af links" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Velkommen tilbage" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Du er ikke medlem af nogen fællesskaber lige nu." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Du har blokeret {userName}. Du kan ikke sende beskeder, medmindre du fjerner blokeringen." @@ -39101,6 +39113,11 @@ msgstr "Du kan annullere sletningen inden for 14 dage" msgid "You can close this modal. The import will continue in the background." msgstr "Du kan lukke dette vindue. Importen fortsætter i baggrunden." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Du kan lukke denne fane" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Du kan nu lukke denne fane og vende tilbage til appen." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Du kan ikke sende en venneanmodning til dig selv." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Du kan ikke sende beskeder i denne kanal." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Du skal stadig afslutte e-mail-trinnet." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Du bliver ikke længere bedt om en adgangsnøgle efter din adgangskode. Din godkendelsesapp er fortsat din anden faktor." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Du skal logge ind igen på alle enheder, du er logget ud af" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Du skal bruge en af dine adgangsnøgler for at logge ind på en ny enhed. Hvis du mister alle dine adgangsnøgler, kan du blive låst ude af din konto. Backupkoder gemmes for dig, så du stadig kan komme ind." @@ -39918,12 +39935,12 @@ msgstr "Din konto er for ny til at sende beskeder i dette fællesskab." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Din kontoanmodning afventer godkendelse. Du kan logge ind, når en administrator har godkendt den." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Din konto kræver flerfaktorgodkendelse, men der er ingen understøttede metoder konfigureret på denne enhed. Log ind på en enhed med din godkendelsesapp eller sikkerhedsnøgle, eller kontakt support." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Din konto vil ikke længere være beskyttet af tofaktorgodkendelse, når du logger ind med din adgangskode. Du mister også udvidede tilladelser i fællesskaber, der kræver tofaktorgodkendelse." @@ -39941,16 +39958,6 @@ msgstr "Din handling kunne ikke gennemføres, da den blev markeret af vores sikk msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Din ansøgning afventer gennemgang. Du kan stadig opdatere oplysningerne om dit fællesskab eller trække ansøgningen tilbage." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Din browser blokerede pop op-vinduet til adgangsnøglen. Tillad pop op-vinduer for dette websted, og prøv igen." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Din browser understøtter ikke adgangsnøgler på dette domæne. Opdater din browser, eller log ind med din adgangskode og tofaktorkode." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Dit fællesskab skal have mindst {minMemberCount, plural, one {# medlem} msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Dit kreditkort er blevet tjekket. Hvis kortet er gyldigt, får du snart adgang til indhold for voksne. Du kan lukke denne fane og vende tilbage til appen." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Din enhed vil bede dig om at gemme en opdateret adgangsnøgle til {name}. Den erstatter den gamle." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Din enhed vil bede dig om at gemme en opdateret adgangsnøgle til {name}. Brug den samme telefon eller sikkerhedsnøgle, som du lige har brugt." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Zoom ind" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/de/messages.po b/fluxer_app/src/features/i18n/locales/de/messages.po index 7e597a275..d4be0891c 100644 --- a/fluxer_app/src/features/i18n/locales/de/messages.po +++ b/fluxer_app/src/features/i18n/locales/de/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {Mitglied} other {Mitglieder}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# Erwähnung} other {# Erwähnungen}}" @@ -2370,8 +2370,8 @@ msgstr "6 Monate" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-stelliger Code" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Account- und Premium-Überschreibungen" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Accountzugriff" @@ -2807,7 +2807,7 @@ msgstr "Aktiver monatlicher Abonnent (Kündigung geplant)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Füge einen Account hinzu, um fortzufahren." msgid "Add an email and password to your account first." msgstr "Füge deinem Account zuerst eine E-Mail-Adresse und ein Passwort hinzu." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Füge deinem Account eine zusätzliche Sicherheitsebene hinzu" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Bot zu einem Ziel hinzufügen" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Kanal hinzufügen" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Neue Reaktionen zu Nachrichten hinzufügen." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Notiz hinzufügen" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Berechtigungsüberschreibung hinzufügen" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Passkey hinzufügen" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Reaktion hinzufügen" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Zum Wörterbuch hinzufügen" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Zu Favoriten hinzufügen" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Zu den GIF-Favoriten hinzugefügt" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Zu Favoriten hinzugefügt" @@ -3296,11 +3296,11 @@ msgstr "Zu Favoriten hinzugefügt" msgid "Added to saved media" msgstr "Zu den gespeicherten Medien hinzugefügt" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Hinzugefügt: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Hinzugefügt: {createdDate} • zuletzt verwendet: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Alle Sprachen" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Alle Nachrichten" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Bereits gelöscht" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Du hast bereits einen Account?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "App-Zoom" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "App-Zoomstufe" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Genehmigen" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Bestätige diese App in der {productName}-App, die du bereits verwendest. Kein Passwort erforderlich." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Möchtest du die Kategorie \"{categoryName}\" wirklich löschen? Dies kann nicht rückgängig gemacht werden." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Möchtest du den Passkey <0>{0} wirklich löschen?" @@ -4493,7 +4493,7 @@ msgstr "Möchtest du diesen Anhang wirklich löschen? Diese Aktion kann nicht r msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Möchtest du diese Community wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden. Alle Kanäle, Nachrichten und Einstellungen werden dauerhaft gelöscht." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Möchtest du diesen Passkey wirklich löschen?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Vor dem Starten von Anrufen nachfragen" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Beim Anmelden nach deinem Passwort zusätzlich einen Passkey abfragen" @@ -4690,7 +4690,7 @@ msgstr "Anhänge" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Audio" @@ -4851,14 +4851,14 @@ msgstr "Authentifizierung" msgid "Authenticator" msgstr "Authenticator" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Authenticator-App" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Authentifizierungscode" @@ -4928,7 +4928,7 @@ msgstr "Autorisierte Apps" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Gerade abwesend" msgid "Back" msgstr "Zurück" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Zurück zu {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Zurück zu Rollen" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Zurück zu den Einstellungen" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Zurück zur Anmeldung" @@ -5342,8 +5347,8 @@ msgstr "Rücktaste" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Backup-Code" @@ -5351,7 +5356,7 @@ msgstr "Backup-Code" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Lesezeichen-Limit erreicht" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Anrufe" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera aus" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera an" @@ -6364,9 +6369,9 @@ msgstr "Dateien können hier nicht hochgeladen werden" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Dateien können hier nicht hochgeladen werden" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Emoji ändern" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Spitznamen des Freundes ändern" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Meinen Spitznamen in der Gruppe ändern" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Spitznamen ändern" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Kanalaktionen" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanal zu Favoriten hinzugefügt" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanal erstellt" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Kanal-Debug" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanal gelöscht" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Kanaldatensatz" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanal aus Favoriten entfernt" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Akzentfarbe deines Profils wählen" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Account beanspruchen" @@ -7715,7 +7720,7 @@ msgstr "Beanspruche deinen Account und bestätige deine E-Mail-Adresse, um Meldu msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Beanspruche deinen Account, indem du eine E-Mail-Adresse und ein Passwort hinzufügst. Wir senden dir einen Code, mit dem du deine E-Mail-Adresse vor dem Abschluss bestätigst." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Beanspruche deinen Account, um Sicherheitsfunktionen wie die Zwei-Faktor-Authentifizierung und Passkeys zu nutzen." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Schnell-CSS löschen?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Suche löschen" @@ -8103,7 +8108,7 @@ msgstr "Klonen ist deaktiviert" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Schließen" @@ -8160,11 +8165,9 @@ msgstr "Beim Schließen in der Menüleiste behalten" msgid "Close to tray" msgstr "In den Infobereich minimieren" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Fenster schließen" @@ -8456,7 +8459,7 @@ msgstr "Kommunikation" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Community-Debug" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Standard der Community" @@ -8577,7 +8580,7 @@ msgstr "Community-Mitgliedsdatensatz" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Community-Mitglieder" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Benachrichtigungsstufe für Community" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Benachrichtigungseinstellungen für die Community" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Vergleich" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Altersprüfung abschließen" @@ -9093,7 +9096,7 @@ msgstr "Verbindung: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Kontextmenüs können per Linksklick (auf Schaltflächen) oder Rechtskli #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Weiter" msgid "Continue to checkout" msgstr "Weiter zur Kasse" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Weiter zur Erstellung eines Passkeys für {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Weiter zur Community-Meldung" msgid "Continue to report user" msgstr "Weiter zur Nutzermeldung" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Mit Passkey fortfahren" @@ -9238,11 +9238,6 @@ msgstr "Mit Passkey fortfahren" msgid "Continue with SSO" msgstr "Mit SSO fortfahren" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Fahre mit deinem Passkey fort, um dich bei {host} anzumelden" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Koordiniert Raids, Brigading oder Belästigung gegen Personen oder Commu #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Kopiert" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kategorie-ID kopieren" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kanal-ID kopieren" @@ -9421,12 +9416,12 @@ msgstr "Kanallink kopieren" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Code kopieren" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Community-ID kopieren" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Einladungs-URL kopieren" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Nachricht kopieren" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Nachrichten-ID kopieren" @@ -9570,7 +9565,7 @@ msgstr "Nachrichten-ID kopieren" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Sticker-URL kopieren" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Kopiere den Einrichtungsschlüssel in deine Authenticator-App." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Nutzer-ID kopieren" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Benutzernamen kopieren" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Anwendung konnte nicht gelöscht werden" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Passkey konnte nicht gelöscht werden" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Einladung konnte nicht gesendet werden" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Einladung konnte nicht gesendet werden. Bitte versuche es erneut." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Umgehung der Erwähnungsunterdrückung konnte nicht aktualisiert werden" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Passkey-Zwei-Faktor-Authentifizierung konnte nicht aktualisiert werden" @@ -10206,6 +10201,11 @@ msgstr "Alternativtext konnte nicht aktualisiert werden. Bitte versuche es erneu msgid "Couldn't update voice activity sharing right now" msgstr "Freigabe der Sprachaktivität konnte derzeit nicht aktualisiert werden" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Dein Passkey konnte nicht aktualisiert werden. Versuche es erneut." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Avatar konnte nicht hochgeladen werden" msgid "Couldn't upload banner" msgstr "Banner konnte nicht hochgeladen werden" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Dein Passkey konnte im Pop-up-Fenster nicht verwendet werden. Versuche es erneut." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Code konnte nicht verifiziert werden. Bitte versuche es erneut." msgid "Couldn't verify the connection" msgstr "Verbindung konnte nicht überprüft werden" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Verifizierung mit Passkey fehlgeschlagen. Bitte versuche es erneut." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Gemütlich" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Erstellen" @@ -10298,7 +10293,7 @@ msgstr "Neue Gruppe mit {userName} erstellen" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Anwendung erstellen" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Kategorie erstellen" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Kanal erstellen" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Community erstellen" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Benutzerdefinierter Warntext" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Benutzerdefiniert …" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Debugging" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Kanal debuggen" @@ -11164,7 +11159,7 @@ msgstr "Nachricht debuggen" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Nutzer debuggen" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "\"{fileName}\" löschen" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Account löschen" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Anwendung löschen" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Anhang löschen" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Medien löschen" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Nachricht löschen" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Nachrichten anderer Mitglieder löschen. Das Anpinnen wird separat gesteuert." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Passkey löschen" @@ -11701,7 +11696,7 @@ msgstr "Beschreibe, worum es in deiner Community geht" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Beschreibung" @@ -11966,7 +11961,7 @@ msgstr "Gerät:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Direkteingabe" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Direktnachricht" @@ -12050,7 +12045,7 @@ msgstr "Vorschau von Direktnachrichten" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Direktnachrichten" @@ -12077,14 +12072,14 @@ msgstr "Direkt-Upload aktiv" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Deaktivieren" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Account deaktivieren" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Getrennt" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Unter „Entdecken“ aufgeführte Community" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Diskriminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Schließen" @@ -12477,7 +12472,7 @@ msgstr "DM- & Freundschaftsanfrage-Einstellungen" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM geschlossen" @@ -12607,7 +12602,7 @@ msgstr "Blockiert nicht. Du kannst es später wieder öffnen." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domain" @@ -12697,7 +12692,7 @@ msgstr "Doppelklicke auf eine Person, um ihren Stream anzusehen." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Niederländisch" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "z. B. YubiKey, iPhone, Arbeitscomputer" @@ -13092,7 +13087,7 @@ msgstr "Globale Einstellungen wie Name, Beschreibung und Symbol bearbeiten." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Gruppe bearbeiten" @@ -13123,7 +13118,7 @@ msgstr "Medien bearbeiten" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Nachricht bearbeiten" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Rückerstattungsberechtigt bis {windowEndsOn}. Dadurch wird auch dein Abo sofort gekündigt." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-Mail" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji aktualisiert" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojis" @@ -13525,7 +13520,7 @@ msgstr "Favoriten leer" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Aktivieren" @@ -13680,7 +13675,7 @@ msgstr "Mobile Push-Benachrichtigungen aktivieren" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Benachrichtigungen aktivieren" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Aktiviere die Integrationen, für die du Anmeldedaten konfiguriert hast. Es werden nur verfügbare Dienste angezeigt." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Zwei-Faktor-Authentifizierung aktivieren" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Englisch (USA)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Verbessert" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Neue E-Mail-Adresse eingeben" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Gib einen deiner Backup-Codes ein, wenn du deinen Passkey nicht verwenden kannst." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Gib einen deiner Backup-Codes ein." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Text eingeben" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Gib den {digitCount}-stelligen Code aus deiner Authenticator-App oder einen deiner Backup-Codes ein." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Gib den Code ein, um fortzufahren." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Gib den Code aus deiner Authenticator-App ein." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Gib deinen Namen ein" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Gib dein Passwort ein." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Abgelaufen am <0>{expiredDate}. <1/> sind nicht mehr aktiv. Du kannst jederzeit erneut abonnieren." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Läuft ab" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Ausdrucksvervollständigung" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Kategorien der Ausdrucksauswahl" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Emojis konnten nicht vorbereitet werden" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Fehler beim Verarbeiten des zugeschnittenen Bildes. Bitte versuche es noch einmal." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "SSO konnte nicht gestartet werden" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Accountwechsel fehlgeschlagen" @@ -15053,7 +15048,7 @@ msgstr "Favorisiert" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favoriten" @@ -15268,6 +15263,11 @@ msgstr "Accounteinrichtung abschließen" msgid "Finish account setup first" msgstr "Schließe zuerst die Accounteinrichtung ab" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Schließe den Vorgang im neuen Tab ab. Wenn du ihn geschlossen hast, drücke erneut auf „Mit Passkey fortfahren“." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Ordnername" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Ordnereinstellungen" @@ -15479,7 +15479,7 @@ msgstr "Für mich" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Sende uns für diese Überprüfung eine SMS, anstatt eine von uns zu erhalten." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Bestätige bitte zu deiner Sicherheit, dass du es bist, um fortzufahren." @@ -15606,7 +15606,7 @@ msgstr "Passwort vergessen" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Passwort vergessen?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Nur Freunde und kleine Communitys" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Freunde von Freunden" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "DSGVO" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Allgemein" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Deutschland" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "{premiumProductName} holen" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF-URLs" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIFs" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Globale Tastenkombination" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Zurück" @@ -16374,6 +16374,11 @@ msgstr "Zurück" msgid "Go back and enter a valid email." msgstr "Gehe zurück und gib eine gültige E-Mail-Adresse ein." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Zurück zu {productName}, um fortzufahren." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Ablauf-Fußnoten ausblenden" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Favoriten ausblenden" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Stummgeschaltete ausblenden" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Stummgeschaltete Kanäle ausblenden" @@ -17358,7 +17363,7 @@ msgstr "Identität" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inaktiv" @@ -17818,7 +17823,7 @@ msgstr "Unangemessenes Profil" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Posteingang" @@ -17867,7 +17872,7 @@ msgstr "Gib die Community-ID an." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Vorschau der Einladungsseite" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Leute einladen" @@ -18456,7 +18461,7 @@ msgstr "Einladende Person:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Einladungen" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Anruf beitreten" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Community beitreten" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Beigetreten bei {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Springen" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Ein Mitglied aus dieser Community entfernen." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Mitglied entfernen" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Anruf verlassen" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Community verlassen" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Link-Generator" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Link in Zwischenablage kopiert" @@ -19859,8 +19864,8 @@ msgstr "Malware oder gefährliche Links" msgid "Malware, credential theft, or harmful files." msgstr "Malware, Zugangsdaten-Diebstahl oder schädliche Dateien." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Verwalten" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Accounts verwalten" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Apps und Geräte verwalten, die Zugriff auf deinen Account haben" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Alle ungelesenen Posteingangskanäle sofort als gelesen markieren, ohne Bestätigung" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Als gelesen markieren" @@ -20021,7 +20026,7 @@ msgstr "Als Spoiler markieren" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Als ungelesen markieren" @@ -20169,7 +20174,7 @@ msgstr "Community für Erwachsene" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Nicht jugendfreie Inhalte" @@ -20315,7 +20320,7 @@ msgstr "Messung läuft…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "Mitglieder" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Mitglieder" @@ -20616,7 +20621,7 @@ msgstr "Diese Rolle erwähnen?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Erwähnungen" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Weitere Medienaktionen" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Weitere Optionen" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Anrufe stummschalten" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Kategorie stummschalten" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Communitys stummschalten" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Community stummschalten" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Beitrittston stummschalten" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Favoriten stummschalten" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Name muss mindestens 2 Zeichen lang sein" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Passkey benennen" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formular zum Benennen eines Passkeys" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Du brauchst einen Account?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Nie" @@ -22276,7 +22281,7 @@ msgstr "Neueste zuerst" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Weiter" @@ -22905,7 +22910,7 @@ msgstr "Keine Benutzer gefunden" msgid "No verification is required." msgstr "Keine Verifizierung erforderlich." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Keine Verifizierungsmethoden verfügbar" @@ -23038,11 +23043,13 @@ msgstr "Nicht gefunden" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Später" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Notiz (nur für dich sichtbar)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Nichts" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Abweichende Benachrichtigungseinstellungen" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Benachrichtigungseinstellungen" @@ -23152,7 +23159,7 @@ msgstr "Benachrichtigungslautstärke" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Aus" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Okay" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Nur Mitglieder mit der Berechtigung \"{manageCommunityPermissionLabel}\" können dies ändern." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Nur Erwähnungen" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Öffne {labelText} in den Einstellungen" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "„{landmarkName}“ öffnen" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Offene Direktnachrichten" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "DM öffnen" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Rechnung {invoiceLabel} öffnen" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Link öffnen" @@ -23850,7 +23857,7 @@ msgstr "Schnellwechsler öffnen" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Einstellungen öffnen" @@ -23935,11 +23942,6 @@ msgstr "Designstudio-Pop-out öffnen" msgid "Open theme studio…" msgstr "Designstudio öffnen …" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Öffne dieses Fenster aus {productName}, um deinen Passkey zu verwenden." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Optionen" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Passkey" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Passkey-Name" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Passkey aktualisiert" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Passkeys" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Passkeys erfordern ein signiertes macOS-Bundle mit einer gültigen Anwendungs-ID. Installiere den signierten Desktop-Client und versuche es erneut." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Passwort" msgid "Password changed" msgstr "Passwort geändert" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Passwort-Manager bieten deinen Passkey möglicherweise nicht unter dieser Webadresse an. Versuche es stattdessen in einem Pop-up-Fenster unter der alten Adresse." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Nachrichtenlink einfügen." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Persönliches Wörterbuch" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Persönliche Notizen" @@ -24885,7 +24887,7 @@ msgstr "Gruppen-DM anpinnen" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Nachricht anpinnen" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "angepinnt" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Angepinnte DM" @@ -25020,7 +25022,7 @@ msgstr "Plattform-Admin" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Wiedergabe" @@ -25318,6 +25320,11 @@ msgstr "Drücke eine Taste, Maustaste oder Gamepad-Taste zum Belegen. Escape bri msgid "Press a shortcut…" msgstr "Tastenkombination drücken …" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Drücke auf „Weiter“, um deinen Passkey zu verwenden." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Primäre Sprache" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Hauptnavigation" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Datenschutzerklärung" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Datenschutzeinstellungen" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Profi-Tipp:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Weiter" @@ -26090,7 +26097,7 @@ msgstr "Mit {emojiShortcode} reagieren" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Durch das Neuerstellen wird der aktuelle Token ungültig. Aktualisiere jeglichen Code, der den alten Wert verwendet." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registrieren" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Registrierte Passkeys" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Banner entfernen" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Lesezeichen entfernen" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Aus dem Wörterbuch entfernen" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Aus Favoriten entfernen" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Aus den Lieblings-GIFs entfernt" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Aus Favoriten entfernt" @@ -27032,7 +27039,7 @@ msgstr "Das Entfernen von Berechtigungen könnte die Funktionen des Bots einschr msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Wenn der Timeout aufgehoben wird, kann <0>{targetUserTag} wieder Nachrichten senden, reagieren und Sprachkanälen beitreten." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Umbenennen" @@ -27119,7 +27126,7 @@ msgstr "Antworten" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Antworten" @@ -27209,7 +27216,7 @@ msgstr "Problem melden" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Nachricht melden" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "2FA für Moderationsaktionen erforderlich" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Passkey als zweiten Faktor verlangen" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Zurücksetzungslink ungültig oder abgelaufen" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Vereinbarung zu nicht jugendfreien Inhalten zurücksetzen" @@ -27880,7 +27887,7 @@ msgstr "Bilderrückwärtssuche" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Bilderrückwärtssuche" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Überprüfen und bestätigen" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Überprüfe die Apps, die auf deinen Account zugreifen können." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Vergangene Käufe und Erstattungsoptionen prüfen" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Überprüfe die angemeldeten Geräte und melde Sitzungen ab, die du nicht erkennst." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rolle aktualisiert" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Rollen" @@ -28261,7 +28268,7 @@ msgstr "Sättigung" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Umfang" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Berechtigungen" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Bildschirmleser" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Nach Kanälen, Personen oder Communitys suchen" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Freunde suchen" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Ausgewählten Text suchen" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Einstellungen durchsuchen" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Einstellungen suchen …" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Sicherheit" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Sicherheitsfunktionen" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Sicherheitsschlüssel" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Sicherheitsschlüssel / Passkey" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Medien mit sensiblem Inhalt" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Gesendet" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Sitzung" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Sitzung für {identifier} abgelaufen. Melde dich erneut an." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Legt die Lautstärke für alle Soundeffekte fest. Einzelne Sound-Einstellungen ignorieren dies." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Einstellungen geöffnet." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Einstellungsbereiche" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Seitenleiste" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Anmelden" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Melde dich an, um dein Geschenk einzulösen" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Im Browser anmelden" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Mit einem Passkey anmelden" @@ -30666,7 +30673,7 @@ msgstr "Melde dich mit dem SSO-Anbieter deiner Organisation an." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Abmelden" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Anmeldedaten" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Anmeldevorgang" @@ -31189,7 +31196,7 @@ msgstr "Einige Nutzer können nicht hinzugefügt werden" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Etwas ist schiefgelaufen" @@ -31374,7 +31381,7 @@ msgstr "Lautstärke" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Töne" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Beginne mit dem Hochladen von Anhängen, sobald diese zum Nachrichtenfeld hinzugefügt wurden" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Videoanruf starten" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Sprachanruf starten" @@ -31899,7 +31906,7 @@ msgstr "Sticker" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Sticker: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Sticker" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Allen Links nicht mehr vertrauen?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Passkeys für die Zwei-Faktor-Authentifizierung nicht mehr verwenden?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Alle Rollenerwähnungen unterdrücken" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Einbettungen unterdrücken" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "Textkanal" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Textkanal" @@ -33055,7 +33062,7 @@ msgstr "Sende uns eine SMS von deinem Telefon" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Text-to-Speech" @@ -33119,6 +33126,11 @@ msgstr "Der Vorgang wurde nicht abgeschlossen. Einige Communitys wurden möglich msgid "That did not go through. Nothing changed. Try again." msgstr "Das hat nicht geklappt. Nichts hat sich geändert. Versuche es erneut." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Das hat nicht funktioniert. Versuche es erneut oder brich ab." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Das sieht nicht nach einer gültigen Farbe aus. Versuche es mit Hex, rgb(), hsl() oder einem CSS-Farbnamen." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Dieses Bild konnte nicht verwendet werden. Versuche eine andere Datei." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Das Bild ist ungültig. Versuche es mit einem anderen." @@ -34035,11 +34047,11 @@ msgstr "Dies ist die Beschreibung der zweiten Option" msgid "This is the third option description" msgstr "Dies ist die Beschreibung der dritten Option" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Dies ist dein letzter Passkey und Passkeys sind dein zweiter Faktor. Wenn du ihn löschst, wird die Zwei-Faktor-Authentifizierung für deinen Account deaktiviert, und deine aktuellen Backup-Codes funktionieren nicht mehr." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Dies ist dein letzter Passkey. Sobald er weg ist, kannst du keinen Passkey mehr als zweiten Faktor verwenden." @@ -34154,16 +34166,6 @@ msgstr "Der Ton dieses Teilnehmers ist ausgeschaltet" msgid "This participant was deafened by moderators" msgstr "Der Ton dieses Teilnehmers wurde von Moderatoren ausgeschaltet" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Diese Passkey-Anfrage konnte nicht verifiziert werden. Schließe dieses Fenster und versuche es erneut." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Diese Passkey-Anfrage ist abgelaufen. Schließe dieses Fenster und versuche es erneut." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Dadurch werden alle vertrauenswürdigen Domains entfernt. Die Warnung f msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Dadurch werden alle benutzerdefinierten Tastenkombinationen entfernt und alle integrierten Tastenkombinationen wieder aktiviert. Dies kann nicht rückgängig gemacht werden." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Diese Anfrage ist abgelaufen. Gehe zurück und versuche es erneut." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Dieser Zurücksetzungslink ist abgelaufen. Zurücksetzungslinks sind 1 Stunde gültig. Bitte fordere einen neuen an." @@ -34807,7 +34814,7 @@ msgstr "Gruppenbesitz an {userName} übertragen?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Eigentumsrechte übertragen" @@ -34823,7 +34830,7 @@ msgstr "Eigentumsrechte an {0} übertragen" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Übersetzen" @@ -34980,7 +34987,7 @@ msgstr "Versuch einen anderen Variablennamen oder lösch die Suche." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Erneut versuchen" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Erneut versuchen" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Versuch es später noch einmal." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Versuch mal, nach \"Design\", \"Benachrichtigungen\" oder \"Datenschutz\" zu suchen" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Stattdessen Sicherheitsschlüssel/Passkey verwenden" @@ -35088,7 +35095,7 @@ msgstr "Türkisch" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Deaktivieren" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Audiofreigabe für diese Quelle deaktivieren oder es in einem Moment erneut versuchen." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Kamera ausschalten" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Deaktiviere den Streaming-Datenschutz, bevor du Anmelde- oder Accountsicherheitsdetails ansiehst." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Aktivieren" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Zwei-Faktor" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Zwei-Faktor-Authentifizierung" @@ -35288,7 +35295,7 @@ msgstr "Zwei-Faktor-Authentifizierung deaktiviert" msgid "Two-factor authentication enabled" msgstr "Zwei-Faktor-Authentifizierung aktiviert" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Zwei-Faktor-Authentifizierung ist aktiviert" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Blockierung des Nutzers aufheben" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Nicht kategorisiert" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Website-Links unterstreichen" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Verstanden" @@ -35643,7 +35650,7 @@ msgstr "Universeller Fallback. Geringste Qualität, funktioniert aber überall." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Stummschaltung aller Geräte aufheben" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Kategorie-Stummschaltung aufheben" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Stummschaltung der Communitys aufheben" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Community-Stummschaltung aufheben" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Stummschaltung der DMs aufheben" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Stummschaltung der Favoriten aufheben" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Anheftung aufheben" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Anheftung der Nachricht aufheben" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Anheftung dieser Nachricht aufheben?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Anheftung der DM aufgehoben" @@ -36193,6 +36200,11 @@ msgstr "E-Mail aktualisieren" msgid "Update my status" msgstr "Meinen Status aktualisieren" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Passkey aktualisieren" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Timeout aktualisieren" msgid "Update your own nickname." msgstr "Deinen Spitznamen aktualisieren." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Aktualisiere deinen Passkey" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Lege in einem eigenen Dialog einen Stichtag für den Nachrichtenverlauf msgid "Use a different email address and verify it with a code." msgstr "Verwende eine andere E-Mail-Adresse und bestätige sie mit einem Code." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Passkey aus einem Passwort-Manager verwenden" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Tatsächlichen Wert verwenden" msgid "Use alternative method" msgstr "Alternative Methode verwenden" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Authenticator-App zur Generierung von Codes für die Zwei-Faktor-Authentifizierung verwenden" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Nur verwenden, wenn es eindeutig gegen die Regeln von {productName} verstößt und nicht zu den oben genannten Punkten passt." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Zwei-Faktor-Authentifizierung mit Passkeys verwenden?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Nutze Passkeys, um dich ohne Passwort anzumelden" @@ -36824,8 +36836,8 @@ msgstr "Sprachaktivierung nutzen" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Nutze die Rechtschreibprüfung deines Betriebssystems, falls verfügbar. Andernfalls nutze die In-App-Wörterbücher von {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Verwende deinen Passkey" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Benutzersteuerung" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Nutzer-Debug" @@ -36972,7 +36984,7 @@ msgstr "Nutzerlautstärke" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verifizierung abgebrochen" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Bestätigungscode" @@ -37185,7 +37197,7 @@ msgstr "Verifizierungs-E-Mail gesendet. Posteingang prüfen." msgid "Verification expired" msgstr "Verifizierung abgelaufen" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Verifizierte Community" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verifizieren" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Verbindung verifizieren" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "E-Mail bestätigen" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formular zur Identitätsverifizierung" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Verifiziere deine Identität" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Bestätige deine E-Mail-Adresse, um Freundschaftsanfragen zu senden." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Bestätige deine E-Mail-Adresse, bevor du einen Passkey hinzufügst." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Bestätige deine E-Mail-Adresse, bevor du eine Authenticator-App hinzufügst." @@ -37571,7 +37583,7 @@ msgstr "Gebannte Nutzer ansehen und verwalten." msgid "View and manage every webhook configured across your community." msgstr "Alle für deine Community konfigurierten Webhooks ansehen und verwalten." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Backup-Codes zur Accountwiederherstellung ansehen und verwalten" @@ -37605,7 +37617,7 @@ msgstr "Kanal ansehen" msgid "View channel members" msgstr "Kanalmitglieder anzeigen" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Codes ansehen" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Tarife ansehen" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Profil ansehen" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "Sprachkanal" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Sprachkanal" @@ -38073,7 +38085,7 @@ msgstr "Storniert" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Hier warten" msgid "Waiting for connection..." msgstr "Warten auf Verbindung..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Warte auf Passkey …" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Zuschauen" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Stream ansehen" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Webseiten-Vorschauen" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Willkommen zurück" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Du bist derzeit in keiner Community." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Du hast {userName} blockiert. Du kannst keine Nachrichten senden, solange du die Blockierung nicht aufhebst." @@ -39101,6 +39113,11 @@ msgstr "Du kannst den Löschvorgang innerhalb von 14 Tagen abbrechen" msgid "You can close this modal. The import will continue in the background." msgstr "Du kannst dieses Fenster schließen. Der Import wird im Hintergrund fortgesetzt." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Du kannst diesen Tab schließen" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Du kannst diesen Tab jetzt schließen und zur App zurückkehren." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Du kannst dir selbst keine Freundschaftsanfrage senden." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Du kannst in diesem Kanal keine Nachrichten senden." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Du musst den E-Mail-Schritt noch abschließen." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Du wirst nach deinem Passwort nicht mehr nach einem Passkey gefragt. Deine Authenticator-App bleibt dein zweiter Faktor." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Du musst dich auf allen abgemeldeten Geräten erneut anmelden" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Du benötigst einen deiner Passkeys, um dich auf einem neuen Gerät anzumelden. Wenn du alle deine Passkeys verlierst, kannst du dauerhaft aus deinem Account ausgesperrt werden. Backup-Codes werden für dich gespeichert, damit du weiterhin Zugang hast." @@ -39918,12 +39935,12 @@ msgstr "Dein Account ist zu neu, um Nachrichten in dieser Community zu senden." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Deine Accountanfrage wartet auf Genehmigung. Du kannst dich anmelden, nachdem ein Admin sie genehmigt hat." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Für deinen Account ist die Multi-Faktor-Authentifizierung erforderlich, aber auf diesem Gerät sind keine unterstützten Methoden eingerichtet. Melde dich auf einem Gerät mit deiner Authenticator-App oder deinem Sicherheitsschlüssel an oder wende dich an den Support." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Dein Account ist beim Anmelden mit deinem Passwort nicht mehr durch Zwei-Faktor-Authentifizierung geschützt. Du verlierst außerdem erweiterte Berechtigungen in Communitys, die Zwei-Faktor-Authentifizierung erfordern." @@ -39941,16 +39958,6 @@ msgstr "Deine Aktion konnte nicht abgeschlossen werden, da sie von unseren Siche msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Dein Antrag wartet auf Prüfung. Du kannst die Details deines Eintrags weiterhin aktualisieren oder den Antrag zurückziehen." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Dein Browser hat das Pop-up-Fenster für Passkeys blockiert. Erlaube Pop-ups für diese Website und versuche es erneut." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Dein Browser unterstützt keine Passkeys für diese Domain. Aktualisiere deinen Browser oder melde dich mit deinem Passwort und deinem Zwei-Faktor-Code an." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Deine Community braucht mindestens {minMemberCount, plural, one {# Mitgl msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Deine Kreditkarte wurde überprüft. Wenn die Kreditkarte gültig ist, werden Inhalte für Erwachsene in Kürze freigeschaltet. Du kannst diesen Tab schließen und zur App zurückkehren." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Dein Gerät wird dich bitten, einen aktualisierten Passkey für {name} zu speichern. Er ersetzt den alten." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Dein Gerät wird dich bitten, einen aktualisierten Passkey für {name} zu speichern. Benutze dasselbe Smartphone oder denselben Sicherheitsschlüssel, den du gerade verwendet hast." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoomen" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Vergrößern" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/el/messages.po b/fluxer_app/src/features/i18n/locales/el/messages.po index 06066c780..5323c6239 100644 --- a/fluxer_app/src/features/i18n/locales/el/messages.po +++ b/fluxer_app/src/features/i18n/locales/el/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {μέλος} other {μέλη}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# αναφορά} other {# αναφορές}}" @@ -2370,8 +2370,8 @@ msgstr "6 μήνες" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "Κωδικός 6 ψηφίων" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Παρακάμψεις λογαριασμού και premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Πρόσβαση λογαριασμού" @@ -2807,7 +2807,7 @@ msgstr "Ενεργός μηνιαίος συνδρομητής (προγραμμ #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Προσθέστε έναν λογαριασμό για να συνεχ msgid "Add an email and password to your account first." msgstr "Προσθέστε πρώτα ένα email και έναν κωδικό πρόσβασης στον λογαριασμό σας." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Πρόσθεσε ένα επιπλέον επίπεδο ασφαλείας στον λογαριασμό σου" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Προσθήκη bot σε έναν προορισμό" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Προσθήκη καναλιού" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Προσθήκη νέων αντιδράσεων στα μηνύματα." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Προσθήκη σημείωσης" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Προσθήκη παράκαμψης" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Προσθήκη κλειδιού πρόσβασης" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Προσθήκη αντίδρασης" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Προσθήκη στο λεξικό" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Προσθήκη στα αγαπημένα" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Προστέθηκε στα αγαπημένα GIF" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Προστέθηκε στα αγαπημένα" @@ -3296,11 +3296,11 @@ msgstr "Προστέθηκε στα αγαπημένα" msgid "Added to saved media" msgstr "Προστέθηκε στα αποθηκευμένα πολυμέσα" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Προστέθηκε: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Προστέθηκε: {createdDate} • τελευταία χρήση: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Όλες οι γλώσσες" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Όλα τα μηνύματα" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Έχει ήδη διαγραφεί" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Έχεις ήδη λογαριασμό;" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Ζουμ εφαρμογής" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Επίπεδο ζουμ εφαρμογής" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Έγκριση" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Εγκρίνετε αυτήν την εφαρμογή από την εφαρμογή {productName} που ήδη χρησιμοποιείτε. Δεν χρειάζεται κωδικός πρόσβασης." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Είστε σίγουροι ότι θέλετε να διαγράψετε την κατηγορία \"{categoryName}\"; Αυτή η ενέργεια δεν μπορεί να αναιρεθεί." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Είστε σίγουροι ότι θέλετε να διαγράψετε το κλειδί πρόσβασης <0>{0};" @@ -4493,7 +4493,7 @@ msgstr "Είστε σίγουροι ότι θέλετε να διαγράψετ msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Είστε σίγουροι ότι θέλετε να διαγράψετε αυτήν την κοινότητα; Αυτή η ενέργεια δεν μπορεί να αναιρεθεί. Όλα τα κανάλια, τα μηνύματα και οι ρυθμίσεις θα διαγραφούν οριστικά." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Είστε σίγουροι ότι θέλετε να διαγράψετε αυτό το κλειδί πρόσβασης;" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Ζητά επιβεβαίωση πριν από την έναρξη κλήσης" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Να ζητείται κλειδί πρόσβασης μετά τον κωδικό πρόσβασής σας κατά τη σύνδεση" @@ -4690,7 +4690,7 @@ msgstr "Συνημμένα" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Ήχος" @@ -4851,14 +4851,14 @@ msgstr "Έλεγχος ταυτότητας" msgid "Authenticator" msgstr "Authenticator" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Εφαρμογή ελέγχου ταυτότητας" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Κωδικός ελέγχου ταυτότητας" @@ -4928,7 +4928,7 @@ msgstr "Εξουσιοδοτημένες εφαρμογές" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Απών τώρα" msgid "Back" msgstr "Πίσω" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Επιστροφή στο {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Επιστροφή στους ρόλους" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Επιστροφή στις ρυθμίσεις" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Επιστροφή στην είσοδο" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Εφεδρικός κωδικός" @@ -5351,7 +5356,7 @@ msgstr "Εφεδρικός κωδικός" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Έχετε φτάσει το όριο σελιδοδεικτών" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Κλήσεις" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Κάμερα απενεργοποιημένη" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Κάμερα ενεργοποιημένη" @@ -6364,9 +6369,9 @@ msgstr "Δεν μπορείτε να ανεβάσετε αρχεία εδώ" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Δεν μπορείτε να ανεβάσετε αρχεία εδώ" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Αλλαγή emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Αλλαγή ψευδώνυμου φίλου" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Αλλαγή του ψευδώνυμού μου στην ομάδα" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Αλλαγή ψευδώνυμου" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Ενέργειες καναλιού" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Το κανάλι προστέθηκε στα αγαπημένα" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Το κανάλι δημιουργήθηκε" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Εντοπισμός σφαλμάτων καναλιού" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Το κανάλι διαγράφηκε" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Εγγραφή καναλιού" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Το κανάλι καταργήθηκε από τα αγαπημένα" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Επίλεξε το χρώμα έμφασης του προφίλ σου" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Διεκδίκηση λογαριασμού" @@ -7715,7 +7720,7 @@ msgstr "Διεκδικήστε τον λογαριασμό σας και επα msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Διεκδικήστε τον λογαριασμό σας προσθέτοντας ένα email και έναν κωδικό πρόσβασης. Θα στείλουμε έναν κωδικό επαλήθευσης για να επιβεβαιώσουμε το email σας πριν ολοκληρώσουμε τη διαδικασία." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Διεκδικήστε τον λογαριασμό σας για να αποκτήσετε πρόσβαση σε λειτουργίες ασφαλείας, όπως έλεγχος ταυτότητας δύο παραγόντων και κλειδιά πρόσβασης." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Εκκαθάριση γρήγορου CSS;" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Εκκαθάριση αναζήτησης" @@ -8103,7 +8108,7 @@ msgstr "Η κλωνοποίηση είναι απενεργοποιημένη" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Κλείσιμο" @@ -8160,11 +8165,9 @@ msgstr "Κλείσιμο στη γραμμή μενού" msgid "Close to tray" msgstr "Κλείσιμο στο tray" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Κλείσιμο παραθύρου" @@ -8456,7 +8459,7 @@ msgstr "Επικοινωνία" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Εντοπισμός σφαλμάτων κοινότητας" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Προεπιλογή κοινότητας" @@ -8577,7 +8580,7 @@ msgstr "Εγγραφή μέλους κοινότητας" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Μέλη κοινότητας" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Επίπεδο ειδοποιήσεων κοινότητας" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Ρυθμίσεις ειδοποιήσεων κοινότητας" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Σύγκριση" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Ολοκλήρωση ελέγχου περιεχομένου ενηλίκων" @@ -9093,7 +9096,7 @@ msgstr "Σύνδεση: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Τα μενού περιβάλλοντος μπορούν να ανοί #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Συνέχεια" msgid "Continue to checkout" msgstr "Συνέχεια στην πληρωμή" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Συνέχεια για τη δημιουργία κλειδιού πρόσβασης για το {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Συνέχεια αναφοράς κοινότητας" msgid "Continue to report user" msgstr "Συνέχεια αναφοράς χρήστη" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Συνέχεια με κλειδί πρόσβασης" @@ -9238,11 +9238,6 @@ msgstr "Συνέχεια με κλειδί πρόσβασης" msgid "Continue with SSO" msgstr "Συνέχεια με SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Συνεχίστε με το κλειδί πρόσβασής σας για να συνδεθείτε στο {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Συντονίζει επιδρομές, οργανωμένες επιθ #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Αντιγράφηκε" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Αντιγραφή αναγνωριστικού κατηγορίας" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Αντιγραφή αναγνωριστικού καναλιού" @@ -9421,12 +9416,12 @@ msgstr "Αντιγραφή συνδέσμου καναλιού" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Αντιγραφή κωδικού" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Αντιγραφή αναγνωριστικού κοινότητας" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Αντιγραφή URL πρόσκλησης" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Αντιγραφή μηνύματος" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Αντιγραφή αναγνωριστικού μηνύματος" @@ -9570,7 +9565,7 @@ msgstr "Αντιγραφή αναγνωριστικού μηνύματος" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Αντιγραφή URL αυτοκόλλητου" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Αντιγράψτε το κλειδί εγκατάστασης στην #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Αντιγραφή αναγνωριστικού χρήστη" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Αντιγραφή ονόματος χρήστη" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Δεν ήταν δυνατή η διαγραφή της εφαρμογής" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Δεν ήταν δυνατή η διαγραφή του κλειδιού πρόσβασης" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Δεν ήταν δυνατή η αποστολή της πρόσκλησης" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Δεν ήταν δυνατή η αποστολή της πρόσκλησης. Δοκιμάστε ξανά." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Δεν ήταν δυνατή η ενημέρωση της παράκαμψης καταστολής αναφορών" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Δεν ήταν δυνατή η ενημέρωση του ελέγχου ταυτότητας δύο παραγόντων με κλειδί πρόσβασης" @@ -10206,6 +10201,11 @@ msgstr "Δεν ήταν δυνατή η ενημέρωση του εναλλακ msgid "Couldn't update voice activity sharing right now" msgstr "Δεν ήταν δυνατή η ενημέρωση της κοινοποίησης φωνητικής δραστηριότητας αυτή τη στιγμή" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Δεν ήταν δυνατή η ενημέρωση του κλειδιού πρόσβασης. Δοκιμάστε ξανά." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Δεν ήταν δυνατή η μεταφόρτωση της εικόν msgid "Couldn't upload banner" msgstr "Δεν ήταν δυνατή η μεταφόρτωση της εικόνας εξωφύλλου" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Δεν ήταν δυνατή η χρήση του κλειδιού πρόσβασης στο αναδυόμενο παράθυρο. Δοκιμάστε ξανά." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Δεν ήταν δυνατή η επαλήθευση αυτού του msgid "Couldn't verify the connection" msgstr "Δεν ήταν δυνατή η επαλήθευση της σύνδεσης" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Δεν ήταν δυνατή η επαλήθευση με κλειδί πρόσβασης. Δοκιμάστε ξανά." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Άνετο" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Δημιουργία" @@ -10298,7 +10293,7 @@ msgstr "Δημιουργία νέας ομάδας με τον/την {userName} #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Δημιουργία εφαρμογής" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Δημιουργία κατηγορίας" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Δημιουργία καναλιού" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Δημιουργία κοινότητας" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Προσαρμοσμένο κείμενο προειδοποίησης" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Προσαρμοσμένο…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Εντοπισμός σφαλμάτων" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Εντοπισμός σφαλμάτων καναλιού" @@ -11164,7 +11159,7 @@ msgstr "Εντοπισμός σφαλμάτων μηνύματος" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Εντοπισμός σφαλμάτων χρήστη" @@ -11315,7 +11310,7 @@ msgstr "Ντέλαγουερ" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Διαγραφή {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Διαγραφή λογαριασμού" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Διαγραφή εφαρμογής" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Διαγραφή συνημμένου" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Διαγραφή πολυμέσων" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Διαγραφή μηνύματος" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Διαγραφή μηνυμάτων άλλων μελών. Το καρφίτσωμα ελέγχεται ξεχωριστά." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Διαγραφή κλειδιού πρόσβασης" @@ -11701,7 +11696,7 @@ msgstr "Περιγράψτε την κοινότητά σας" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Περιγραφή" @@ -11966,7 +11961,7 @@ msgstr "Συσκευή:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Απευθείας είσοδος" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Απευθείας μήνυμα" @@ -12050,7 +12045,7 @@ msgstr "Προεπισκοπήσεις απευθείας μηνυμάτων" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Απευθείας μηνύματα" @@ -12077,14 +12072,14 @@ msgstr "Άμεση μεταφόρτωση ενεργή" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Απενεργοποίηση" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Απενεργοποίηση λογαριασμού" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Αποσυνδέθηκε" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Κοινότητα στην Ανακάλυψη" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Διακριτικό" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Παράβλεψη" @@ -12477,7 +12472,7 @@ msgstr "Ρυθμίσεις DM και αιτημάτων φιλίας" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Το DM έκλεισε" @@ -12607,7 +12602,7 @@ msgstr "Δεν μπλοκάρει. Μπορείτε να το ξανανοίξε #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Τομέας" @@ -12697,7 +12692,7 @@ msgstr "Κάντε διπλό κλικ σε κάποιον για να παρα #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Ολλανδικά" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "π.χ. YubiKey, iPhone, υπολογιστής εργασίας" @@ -13092,7 +13087,7 @@ msgstr "Επεξεργασία γενικών ρυθμίσεων, όπως όν #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Επεξεργασία ομάδας" @@ -13123,7 +13118,7 @@ msgstr "Επεξεργασία πολυμέσων" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Επεξεργασία μηνύματος" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Δικαιούστε επιστροφή χρημάτων έως {windowEndsOn}. Αυτό θα ακυρώσει επίσης τη συνδρομή σας άμεσα." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Email" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Το emoji ενημερώθηκε" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emoji" @@ -13525,7 +13520,7 @@ msgstr "Κενά αγαπημένα" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Ενεργοποίηση" @@ -13680,7 +13675,7 @@ msgstr "Ενεργοποίηση ειδοποιήσεων push σε κινητό #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Ενεργοποίηση ειδοποιήσεων" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Ενεργοποιήστε τις ενσωματώσεις για τις οποίες έχετε διαμορφώσει τα διαπιστευτήρια. Εμφανίζονται μόνο οι διαθέσιμες υπηρεσίες." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Ενεργοποίηση ελέγχου ταυτότητας δύο παραγόντων" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Αγγλικά (ΗΠΑ)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Βελτιωμένη" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Εισαγάγετε νέο email" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Εισαγάγετε έναν από τους εφεδρικούς κωδικούς σας εάν δεν μπορείτε να χρησιμοποιήσετε το κλειδί πρόσβασής σας." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Εισαγάγετε έναν από τους εφεδρικούς κωδικούς σας." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Πληκτρολογήστε κείμενο" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Εισαγάγετε τον κωδικό {digitCount} ψηφίων από την εφαρμογή ελέγχου ταυτότητας ή έναν εφεδρικό κωδικό." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Εισάγετε τον κωδικό πριν συνεχίσετε." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Εισάγετε τον κωδικό από την εφαρμογή ελέγχου ταυτότητας." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Πληκτρολογήστε το όνομά σας" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Εισάγετε τον κωδικό πρόσβασής σας." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Έληξε στις <0>{expiredDate}. Τα <1/> δεν είναι πλέον ενεργά. Μπορείτε να εγγραφείτε ξανά ανά πάσα στιγμή." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Λήγει" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Αυτόματη συμπλήρωση εκφράσεων" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Κατηγορίες επιλογέα εκφράσεων" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Αποτυχία προετοιμασίας emoji" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Αποτυχία επεξεργασίας της περικομμένης εικόνας. Δοκιμάστε ξανά." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Αποτυχία έναρξης SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Αποτυχία αλλαγής λογαριασμού" @@ -15053,7 +15048,7 @@ msgstr "Αγαπημένα" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Αγαπημένα" @@ -15268,6 +15263,11 @@ msgstr "Ολοκλήρωση ρύθμισης λογαριασμού" msgid "Finish account setup first" msgstr "Ολοκληρώστε πρώτα τη ρύθμιση του λογαριασμού" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Ολοκληρώστε στη νέα καρτέλα. Αν την κλείσατε, πατήστε ξανά «Συνέχεια με κλειδί πρόσβασης»." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Όνομα φακέλου" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Ρυθμίσεις φακέλου" @@ -15479,7 +15479,7 @@ msgstr "Για μένα" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Για αυτόν τον έλεγχο, μας στέλνετε ένα μήνυμα αντί να λάβετε ένα από εμάς." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Για την ασφάλειά σας, επιβεβαιώστε ότι είστε εσείς για να συνεχίσετε." @@ -15606,7 +15606,7 @@ msgstr "Ξεχάσατε τον κωδικό πρόσβασης" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Ξεχάσατε τον κωδικό σας;" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Μόνο φίλοι και μικρές κοινότητες" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Φίλοι φίλων" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Γενικά" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Γερμανία" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Αποκτήστε {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URL των GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Καθολική συντόμευση" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Πίσω" @@ -16374,6 +16374,11 @@ msgstr "Πίσω" msgid "Go back and enter a valid email." msgstr "Επιστρέψτε και εισαγάγετε ένα έγκυρο email." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Επιστρέψτε στο {productName} για να συνεχίσετε." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Απόκρυψη υποσημειώσεων λήξης" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Απόκρυψη αγαπημένων" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Απόκρυψη καναλιών σε σίγαση" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Απόκρυψη καναλιών σε σίγαση" @@ -17358,7 +17363,7 @@ msgstr "Ταυτότητα" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Αδρανής" @@ -17818,7 +17823,7 @@ msgstr "Ακατάλληλο προφίλ" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Εισερχόμενα" @@ -17867,7 +17872,7 @@ msgstr "Συμπεριλάβετε το αναγνωριστικό κοινότ #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Προεπισκόπηση σελίδας πρόσκλησης" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Πρόσκληση ατόμων" @@ -18456,7 +18461,7 @@ msgstr "Προσκαλών:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Προσκλήσεις" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Συμμετοχή στην κλήση" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Συμμετοχή στην κοινότητα" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Έγινε μέλος στο {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Μετάβαση" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Αποβολή μέλους από αυτήν την κοινότητα." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Αποβολή μέλους" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Αποχώρηση από την κλήση" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Αποχώρηση από την κοινότητα" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Δημιουργία συνδέσμου" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Ο σύνδεσμος αντιγράφηκε στο πρόχειρο" @@ -19859,8 +19864,8 @@ msgstr "Κακόβουλο λογισμικό ή επικίνδυνοι σύνδ msgid "Malware, credential theft, or harmful files." msgstr "Κακόβουλο λογισμικό, κλοπή διαπιστευτηρίων ή επιβλαβή αρχεία." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Διαχείριση" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Διαχείριση λογαριασμών" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Διαχειριστείτε εφαρμογές και συσκευές που έχουν πρόσβαση στον λογαριασμό σας" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Σήμανση όλων των μη αναγνωσμένων καναλιών εισερχομένων ως αναγνωσμένων αμέσως, χωρίς επιβεβαίωση" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Σήμανση ως αναγνωσμένου" @@ -20021,7 +20026,7 @@ msgstr "Σήμανση ως spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Σήμανση ως μη αναγνωσμένου" @@ -20169,7 +20174,7 @@ msgstr "Κοινότητα ενηλίκων" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Περιεχόμενο για ενήλικες" @@ -20315,7 +20320,7 @@ msgstr "Μέτρηση…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "μέλη" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Μέλη" @@ -20616,7 +20621,7 @@ msgstr "Αναφορά σε αυτόν τον ρόλο;" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Αναφορές" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Περισσότερες ενέργειες πολυμέσων" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Περισσότερες επιλογές" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Σίγαση κλήσεων" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Σίγαση κατηγορίας" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Σίγαση κοινοτήτων" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Σίγαση κοινότητας" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Σίγαση ήχου εισόδου" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Σίγαση αγαπημένων" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Το όνομα πρέπει να έχει τουλάχιστον 2 χαρακτήρες" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Ονομασία κλειδιού πρόσβασης" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Φόρμα ονομασίας κλειδιού πρόσβασης" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Νεμπράσκα" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Χρειάζεστε λογαριασμό;" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Νεβάδα" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Ποτέ" @@ -22276,7 +22281,7 @@ msgstr "Πιο πρόσφατα πρώτα" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Επόμενο" @@ -22905,7 +22910,7 @@ msgstr "Δεν βρέθηκαν χρήστες" msgid "No verification is required." msgstr "Δεν απαιτείται επαλήθευση." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Δεν υπάρχουν διαθέσιμες μέθοδοι επαλήθευσης" @@ -23038,11 +23043,13 @@ msgstr "Δεν βρέθηκε" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Όχι τώρα" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Σημείωση (ορατή μόνο σε εσάς)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Τίποτα" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Παρακάμψεις ειδοποιήσεων" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Ρυθμίσεις ειδοποιήσεων" @@ -23152,7 +23159,7 @@ msgstr "Ένταση ήχου ειδοποιήσεων" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Ανενεργό" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Εκτός σύνδεσης" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "OK" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "σε σύνδεση" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Σε σύνδεση" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Μόνο τα μέλη με το δικαίωμα «{manageCommunityPermissionLabel}» μπορούν να το αλλάξουν." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Μόνο αναφορές" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Άνοιγμα {labelText} στις ρυθμίσεις" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Άνοιγμα {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Ανοιχτά απευθείας μηνύματα" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Άνοιγμα DM" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Άνοιγμα τιμολογίου {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Άνοιγμα συνδέσμου" @@ -23850,7 +23857,7 @@ msgstr "Άνοιγμα γρήγορης εναλλαγής" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Άνοιγμα ρυθμίσεων" @@ -23935,11 +23942,6 @@ msgstr "Άνοιγμα αναδυόμενου παραθύρου στούντι msgid "Open theme studio…" msgstr "Άνοιγμα στούντιο θεμάτων…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Ανοίξτε αυτό το παράθυρο από το {productName} για να χρησιμοποιήσετε το κλειδί πρόσβασής σας." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Επιλογές" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Κλειδί πρόσβασης" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Όνομα κλειδιού πρόσβασης" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Το κλειδί πρόσβασης ενημερώθηκε" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Κλειδιά πρόσβασης" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Τα κλειδιά πρόσβασης απαιτούν ένα υπογεγραμμένο πακέτο macOS με έγκυρο αναγνωριστικό εφαρμογής. Εγκαταστήστε την υπογεγραμμένη εφαρμογή για υπολογιστή και δοκιμάστε ξανά." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Κωδικός πρόσβασης" msgid "Password changed" msgstr "Ο κωδικός πρόσβασης άλλαξε" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Οι διαχειριστές κωδικών πρόσβασης ενδέχεται να μην προσφέρουν το κλειδί πρόσβασής σας σε αυτήν τη διεύθυνση ιστού. Δοκιμάστε το σε αναδυόμενο παράθυρο στην παλιά διεύθυνση." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Επικολλήστε τον σύνδεσμο μηνύματος." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Προσωπικό λεξικό" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Προσωπικές σημειώσεις" @@ -24885,7 +24887,7 @@ msgstr "Καρφίτσωμα ομαδικής συνομιλίας" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Καρφίτσωμα μηνύματος" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "καρφιτσωμένο" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Καρφιτσωμένο DM" @@ -25020,7 +25022,7 @@ msgstr "Διαχειριστής πλατφόρμας" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Αναπαραγωγή" @@ -25318,6 +25320,11 @@ msgstr "Πατήστε ένα πλήκτρο, ένα κουμπί του πον msgid "Press a shortcut…" msgstr "Πατήστε μια συντόμευση…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Πατήστε Συνέχεια για να χρησιμοποιήσετε το κλειδί πρόσβασής σας." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Κύρια γλώσσα" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Κύρια πλοήγηση" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Πολιτική απορρήτου" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Ρυθμίσεις απορρήτου" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Συμβουλή:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Συνέχεια" @@ -26090,7 +26097,7 @@ msgstr "Αντίδραση με {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Η αναδημιουργία θα ακυρώσει το τρέχον διακριτικό. Ενημερώστε κάθε κώδικα που χρησιμοποιεί την παλιά τιμή." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Εγγραφή" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Καταχωρισμένα κλειδιά πρόσβασης" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Κατάργηση banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Κατάργηση σελιδοδείκτη" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Αφαίρεση από το λεξικό" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Αφαίρεση από τα αγαπημένα" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Αφαιρέθηκε από τα αγαπημένα GIF" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Αφαιρέθηκε από τα αγαπημένα" @@ -27032,7 +27039,7 @@ msgstr "Η κατάργηση των δικαιωμάτων μπορεί να π msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Η κατάργηση του προσωρινού περιορισμού θα επιτρέψει στον/στην <0>{targetUserTag} να στέλνει μηνύματα, να αντιδρά και να συμμετέχει ξανά σε φωνητικά κανάλια." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Μετονομασία" @@ -27119,7 +27126,7 @@ msgstr "Απαντήσεις" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Απάντηση" @@ -27209,7 +27216,7 @@ msgstr "Αναφορά προβλήματος" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Αναφορά μηνύματος" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Απαίτηση 2FA για ενέργειες συντονισμού" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Απαίτηση κλειδιού πρόσβασης ως δεύτερου παράγοντα" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Ο σύνδεσμος επαναφοράς είναι μη έγκυρος ή έχει λήξει" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Επαναφορά κατάστασης συμφωνίας περιεχομένου ενηλίκων" @@ -27880,7 +27887,7 @@ msgstr "Αντίστροφη αναζήτηση" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Αντίστροφη αναζήτηση εικόνας" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Επισκόπηση και επιβεβαίωση" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Ελέγξτε τις εφαρμογές που έχουν πρόσβαση στον λογαριασμό σας." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Έλεγχος προηγούμενων αγορών και επιλογών επιστροφής χρημάτων" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Ελέγξτε τις συνδεδεμένες συσκευές και αποσυνδέστε τις συνεδρίες που δεν αναγνωρίζετε." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Ο ρόλος ενημερώθηκε" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Ρόλοι" @@ -28261,7 +28268,7 @@ msgstr "Κορεσμός" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Εύρος" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Δικαιώματα πρόσβασης" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Πρόγραμμα ανάγνωσης οθόνης" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Αναζήτηση καναλιών, ατόμων ή κοινοτήτων" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Αναζήτηση φίλων" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Αναζήτηση επιλεγμένου κειμένου" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Αναζήτηση ρυθμίσεων" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Αναζήτηση ρυθμίσεων…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Ασφάλεια" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Λειτουργίες ασφαλείας" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Κλειδί ασφαλείας" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Κλειδί ασφαλείας / κλειδί πρόσβασης" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Ευαίσθητα πολυμέσα" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Στάλθηκε" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Συνεδρία" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Η συνεδρία για το {identifier} έληξε. Συνδεθείτε ξανά." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Ορίζει την ένταση για όλα τα ηχητικά εφέ. Οι μεμονωμένες ρυθμίσεις ήχου αγνοούν αυτήν την επιλογή." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Οι ρυθμίσεις άνοιξαν." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Ενότητες ρυθμίσεων" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Πλευρική γραμμή" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Σύνδεση" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Συνδεθείτε για να παραλάβετε το δώρο σας" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Σύνδεση μέσω προγράμματος περιήγησης" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Σύνδεση με κλειδί πρόσβασης" @@ -30666,7 +30673,7 @@ msgstr "Συνδεθείτε με τον πάροχο ενιαίας σύνδε #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Αποσύνδεση" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Στοιχεία σύνδεσης" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Ροή σύνδεσης" @@ -31189,7 +31196,7 @@ msgstr "Ορισμένοι χρήστες δεν μπορούν να προστ #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Κάτι πήγε στραβά" @@ -31374,7 +31381,7 @@ msgstr "Ένταση ήχου" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Ήχοι" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Έναρξη αποστολής των συνημμένων μόλις προστεθούν στο πλαίσιο μηνύματος" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Έναρξη βιντεοκλήσης" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Έναρξη φωνητικής κλήσης" @@ -31899,7 +31906,7 @@ msgstr "αυτοκόλλητο" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Αυτοκόλλητο: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Αυτοκόλλητα" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Να μην εμπιστεύεστε πλέον όλους τους συνδέσμους;" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Θέλετε να σταματήσετε τη χρήση κλειδιών πρόσβασης για έλεγχο ταυτότητας δύο παραγόντων;" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Απενεργοποίηση όλων των αναφορών ρόλων" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Απόκρυψη ενσωματώσεων" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "κανάλι κειμένου" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Κανάλι κειμένου" @@ -33055,7 +33062,7 @@ msgstr "Στείλτε μας μήνυμα από το τηλέφωνό σας" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Κείμενο σε ομιλία" @@ -33119,6 +33126,11 @@ msgstr "Αυτό δεν ολοκληρώθηκε. Ενδέχεται να έχε msgid "That did not go through. Nothing changed. Try again." msgstr "Δεν λειτούργησε. Τίποτα δεν άλλαξε. Δοκιμάστε ξανά." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Αυτό δεν λειτούργησε. Δοκιμάστε ξανά ή ακυρώστε." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Αυτό δεν μοιάζει με έγκυρο χρώμα. Δοκιμάστε hex, rgb(), hsl() ή ένα όνομα χρώματος CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Δεν ήταν δυνατή η χρήση αυτής της εικόνας. Δοκιμάστε διαφορετικό αρχείο." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Αυτή η εικόνα δεν είναι έγκυρη. Δοκιμάστε μια άλλη." @@ -34035,11 +34047,11 @@ msgstr "Αυτή είναι η περιγραφή της δεύτερης επι msgid "This is the third option description" msgstr "Αυτή είναι η περιγραφή της τρίτης επιλογής" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Αυτό είναι το τελευταίο σας κλειδί πρόσβασης και τα κλειδιά πρόσβασης είναι ο δεύτερος παράγοντάς σας. Η διαγραφή του απενεργοποιεί τον έλεγχο ταυτότητας δύο παραγόντων για τον λογαριασμό σας και οι τρέχοντες εφεδρικοί κωδικοί σας θα πάψουν να λειτουργούν." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Αυτό είναι το τελευταίο σας κλειδί πρόσβασης. Μόλις διαγραφεί, δεν θα μπορείτε να χρησιμοποιήσετε κλειδί πρόσβασης ως δεύτερο παράγοντα." @@ -34154,16 +34166,6 @@ msgstr "Αυτός ο συμμετέχων είναι σε σίγαση ήχου msgid "This participant was deafened by moderators" msgstr "Αυτός ο συμμετέχων τέθηκε σε σίγαση ήχου από συντονιστές" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Αυτό το αίτημα κλειδιού πρόσβασης δεν ήταν δυνατό να επαληθευτεί. Κλείστε αυτό το παράθυρο και δοκιμάστε ξανά." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Αυτό το αίτημα κλειδιού πρόσβασης έληξε. Κλείστε αυτό το παράθυρο και δοκιμάστε ξανά." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Αυτό καταργεί όλα τα αξιόπιστα domain. Θα β msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Αυτό καταργεί κάθε προσαρμοσμένη συντόμευση και ενεργοποιεί ξανά όλες τις ενσωματωμένες συντομεύσεις. Αυτό δεν μπορεί να αναιρεθεί." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Αυτό το αίτημα έχει λήξει. Επιστρέψτε και δοκιμάστε ξανά." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Αυτός ο σύνδεσμος επαναφοράς έχει λήξει. Οι σύνδεσμοι επαναφοράς ισχύουν για 1 ώρα. Ζητήστε έναν νέο." @@ -34807,7 +34814,7 @@ msgstr "Μεταβίβαση ιδιοκτησίας της ομάδας στον #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Μεταβίβαση ιδιοκτησίας" @@ -34823,7 +34830,7 @@ msgstr "Η ιδιοκτησία μεταβιβάστηκε σε {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Μετάφραση" @@ -34980,7 +34987,7 @@ msgstr "Δοκιμάστε ένα διαφορετικό όνομα μεταβλ #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Δοκιμάστε ξανά" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Δοκιμάστε ξανά" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Δοκιμάστε ξανά σε λίγο." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Δοκιμάστε να αναζητήσετε κάτι όπως «θέμα», «ειδοποιήσεις» ή «απόρρητο»" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Δοκιμάστε κλειδί ασφαλείας / κλειδί πρόσβασης" @@ -35088,7 +35095,7 @@ msgstr "Τουρκικά" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Απενεργοποίηση" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Απενεργοποιήστε την κοινή χρήση ήχου για αυτήν την πηγή ή δοκιμάστε ξανά σε λίγο." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Απενεργοποίηση κάμερας" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Απενεργοποιήστε το απόρρητο ροής πριν δείτε τα στοιχεία σύνδεσης ή ασφάλειας λογαριασμού." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Ενεργοποίηση" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Έλεγχος ταυτότητας δύο παραγόντων" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Έλεγχος ταυτότητας δύο παραγόντων" @@ -35288,7 +35295,7 @@ msgstr "Ο έλεγχος ταυτότητας δύο παραγόντων απ msgid "Two-factor authentication enabled" msgstr "Ο έλεγχος ταυτότητας δύο παραγόντων ενεργοποιήθηκε" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Ο έλεγχος ταυτότητας δύο παραγόντων είναι ενεργοποιημένος" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Ξεμπλοκάρισμα χρήστη" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Χωρίς κατηγορία" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Υπογράμμιση συνδέσμων ιστοσελίδων" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Το κατάλαβα" @@ -35643,7 +35650,7 @@ msgstr "Καθολική εφεδρική επιλογή. Η χαμηλότερ #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Κατάργηση σίγασης όλων των συσκευών" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Κατάργηση σίγασης κατηγορίας" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Κατάργηση σίγασης κοινοτήτων" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Κατάργηση σίγασης κοινότητας" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Κατάργηση σίγασης DM" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Κατάργηση σίγασης αγαπημένων" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Ξεκαρφιτσώστε το" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Κατάργηση καρφιτσώματος μηνύματος" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Να καταργηθεί το καρφίτσωμα αυτού του μηνύματος;" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Καταργήθηκε το καρφίτσωμα του DM" @@ -36193,6 +36200,11 @@ msgstr "Ενημέρωση email" msgid "Update my status" msgstr "Ενημέρωση της κατάστασής μου" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Ενημέρωση κλειδιού πρόσβασης" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Ενημέρωση προσωρινού περιορισμού" msgid "Update your own nickname." msgstr "Ενημέρωση του δικού σας ψευδωνύμου." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Ενημερώστε το κλειδί πρόσβασής σας" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Χρησιμοποιήστε ένα ειδικό αναδυόμενο π msgid "Use a different email address and verify it with a code." msgstr "Χρησιμοποιήστε μια διαφορετική διεύθυνση email και επαληθεύστε την με έναν κωδικό." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Χρήση κλειδιού πρόσβασης από διαχειριστή κωδικών πρόσβασης" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Χρήση πραγματικής τιμής" msgid "Use alternative method" msgstr "Χρήση εναλλακτικής μεθόδου" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Χρησιμοποιήστε μια εφαρμογή ελέγχου ταυτότητας για να δημιουργήσετε κωδικούς για έλεγχο ταυτότητας δύο παραγόντων" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Χρησιμοποιήστε το μόνο αν παραβιάζει σαφώς τους κανόνες του {productName} και δεν ταιριάζει με τα παραπάνω." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Θέλετε να χρησιμοποιείτε κλειδιά πρόσβασης για έλεγχο ταυτότητας δύο παραγόντων;" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Χρησιμοποιήστε κλειδιά πρόσβασης για να συνδέεστε χωρίς κωδικό πρόσβασης" @@ -36824,8 +36836,8 @@ msgstr "Χρήση φωνητικής δραστηριότητας" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Χρησιμοποιήστε τον ορθογραφικό έλεγχο του λειτουργικού σας συστήματος όταν είναι διαθέσιμος. Διαφορετικά, χρησιμοποιήστε τα λεξικά εντός εφαρμογής του {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Χρησιμοποιήστε το κλειδί πρόσβασής σας" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Χειριστήρια χρήστη" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Εντοπισμός σφαλμάτων χρήστη" @@ -36972,7 +36984,7 @@ msgstr "Ένταση χρήστη" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Η επαλήθευση ακυρώθηκε" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Κωδικός επαλήθευσης" @@ -37185,7 +37197,7 @@ msgstr "Στάλθηκε email επαλήθευσης. Ελέγξτε τα ει msgid "Verification expired" msgstr "Η επαλήθευση έληξε" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Επαληθευμένη κοινότητα" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Επαλήθευση" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Επαλήθευση σύνδεσης" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Επαλήθευση email" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Φόρμα επαλήθευσης ταυτότητας" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Επιβεβαιώστε την ταυτότητά σας" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Επαληθεύστε τη διεύθυνση email σας για να στείλετε αιτήματα φιλίας." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Επαληθεύστε το email σας πριν προσθέσετε ένα κλειδί πρόσβασης." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Επαληθεύστε το email σας πριν προσθέσετε μια εφαρμογή ελέγχου ταυτότητας." @@ -37571,7 +37583,7 @@ msgstr "Προβολή και διαχείριση αποκλεισμένων χ msgid "View and manage every webhook configured across your community." msgstr "Δείτε και διαχειριστείτε κάθε webhook που έχει ρυθμιστεί στην κοινότητά σας." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Προβολή και διαχείριση των εφεδρικών κωδικών σας για ανάκτηση λογαριασμού" @@ -37605,7 +37617,7 @@ msgstr "Προβολή καναλιού" msgid "View channel members" msgstr "Προβολή μελών καναλιού" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Προβολή κωδικών" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Δείτε τα πακέτα" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Προβολή προφίλ" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "φωνητικό κανάλι" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Φωνητικό κανάλι" @@ -38073,7 +38085,7 @@ msgstr "Άκυρο" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Περιμένετε εδώ" msgid "Waiting for connection..." msgstr "Αναμονή σύνδεσης..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Αναμονή για κλειδί πρόσβασης…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Παρακολούθηση" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Παρακολούθηση ροής" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Προεπισκοπήσεις ιστοτόπων" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Καλώς ήρθες ξανά" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Δεν είστε σε καμία κοινότητα αυτήν τη στιγμή." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Έχετε μπλοκάρει τον/την {userName}. Δεν θα μπορείτε να στέλνετε μηνύματα, εκτός αν τον/την ξεμπλοκάρετε." @@ -39101,6 +39113,11 @@ msgstr "Μπορείτε να ακυρώσετε τη διαδικασία δι msgid "You can close this modal. The import will continue in the background." msgstr "Μπορείτε να κλείσετε αυτό το παράθυρο. Η εισαγωγή θα συνεχιστεί στο παρασκήνιο." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Μπορείτε να κλείσετε αυτή την καρτέλα" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Μπορείτε τώρα να κλείσετε αυτήν την καρτέλα και να επιστρέψετε στην εφαρμογή." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Δεν μπορείτε να στείλετε αίτημα φιλίας στον εαυτό σας." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Δεν μπορείτε να στείλετε μηνύματα σε αυτό το κανάλι." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Θα χρειαστεί να ολοκληρώσετε και το βήμα του email." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Δεν θα σας ζητείται πλέον κλειδί πρόσβασης μετά τον κωδικό πρόσβασής σας. Η εφαρμογή ελέγχου ταυτότητας παραμένει ο δεύτερος παράγοντάς σας." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Θα πρέπει να συνδεθείτε ξανά σε όλες τις συσκευές από τις οποίες αποσυνδεθήκατε" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Θα χρειαστείτε ένα από τα κλειδιά πρόσβασής σας για να συνδεθείτε σε μια νέα συσκευή. Αν χάσετε όλα τα κλειδιά πρόσβασης, μπορεί να χάσετε οριστικά την πρόσβαση στον λογαριασμό σας. Θα αποθηκευτούν εφεδρικοί κωδικοί για εσάς, ώστε να έχετε πάντα έναν τρόπο να συνδεθείτε." @@ -39918,12 +39935,12 @@ msgstr "Ο λογαριασμός σας είναι πολύ καινούριο msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Το αίτημα λογαριασμού σας εκκρεμεί για έγκριση. Μπορείτε να συνδεθείτε αφού το εγκρίνει ένας διαχειριστής." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Ο λογαριασμός σας απαιτεί έλεγχο ταυτότητας πολλών παραγόντων, αλλά δεν έχουν ρυθμιστεί υποστηριζόμενες μέθοδοι σε αυτήν τη συσκευή. Συνδεθείτε σε μια συσκευή με την εφαρμογή ελέγχου ταυτότητας ή το κλειδί ασφαλείας σας ή επικοινωνήστε με την υποστήριξη." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Ο λογαριασμός σας δεν θα προστατεύεται πλέον με έλεγχο ταυτότητας δύο παραγόντων όταν συνδέεστε με τον κωδικό πρόσβασής σας. Θα χάσετε επίσης τα αυξημένα δικαιώματα σε κοινότητες που απαιτούν έλεγχο ταυτότητας δύο παραγόντων." @@ -39941,16 +39958,6 @@ msgstr "Η ενέργειά σας δεν ολοκληρώθηκε επειδή msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Η αίτησή σας εκκρεμεί για έλεγχο. Μπορείτε ακόμα να ενημερώσετε τα στοιχεία της καταχώρισής σας ή να αποσύρετε την αίτηση." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Το πρόγραμμα περιήγησής σας μπλόκαρε το αναδυόμενο παράθυρο του κλειδιού πρόσβασης. Επιτρέψτε τα αναδυόμενα παράθυρα για αυτόν τον ιστότοπο και δοκιμάστε ξανά." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Το πρόγραμμα περιήγησής σας δεν υποστηρίζει κλειδιά πρόσβασης σε αυτόν τον τομέα. Ενημερώστε το πρόγραμμα περιήγησης ή συνδεθείτε με τον κωδικό πρόσβασης και τον κωδικό ελέγχου ταυτότητας δύο παραγόντων." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Η κοινότητά σας χρειάζεται τουλάχιστον msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Η πιστωτική σας κάρτα έχει ελεγχθεί. Εάν η κάρτα είναι έγκυρη, το περιεχόμενο ενηλίκων θα ξεκλειδωθεί σύντομα. Μπορείτε να κλείσετε αυτήν την καρτέλα και να επιστρέψετε στην εφαρμογή." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Η συσκευή σας θα σας ζητήσει να αποθηκεύσετε ένα ενημερωμένο κλειδί πρόσβασης για το {name}. Αντικαθιστά το παλιό." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Η συσκευή σας θα σας ζητήσει να αποθηκεύσετε ένα ενημερωμένο κλειδί πρόσβασης για το {name}. Χρησιμοποιήστε το ίδιο τηλέφωνο ή κλειδί ασφαλείας που μόλις χρησιμοποιήσατε." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Ζουμ" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Μεγέθυνση" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/en-GB/messages.po b/fluxer_app/src/features/i18n/locales/en-GB/messages.po index 162a5284b..4afad151a 100644 --- a/fluxer_app/src/features/i18n/locales/en-GB/messages.po +++ b/fluxer_app/src/features/i18n/locales/en-GB/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {member} other {members}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# mention} other {# mentions}}" @@ -2370,8 +2370,8 @@ msgstr "6 months" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-digit code" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Account & premium overrides" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Account access" @@ -2807,7 +2807,7 @@ msgstr "Active monthly subscriber (cancellation scheduled)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Add an account to continue." msgid "Add an email and password to your account first." msgstr "Add an email and password to your account first." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Add an extra layer of security to your account" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Add bot to a destination" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Add channel" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Add new reactions to messages." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Add note" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Add override" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Add passkey" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Add reaction" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Add to dictionary" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Add to favourites" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Added to favourite GIFs" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Added to favourites" @@ -3296,11 +3296,11 @@ msgstr "Added to favourites" msgid "Added to saved media" msgstr "Added to saved media" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Added: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Added: {createdDate} • last used: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "All languages" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "All messages" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Already deleted" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Already have an account?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "App zoom" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "App zoom level" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Approve" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Approve this app from the {productName} app you already use. No password needed." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Are you sure you want to delete the category \"{categoryName}\"? This cannot be undone." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Are you sure you want to delete the passkey <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Are you sure you want to delete this attachment? This action cannot be u msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Are you sure you want to delete this passkey?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Ask before starting calls" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Ask for a passkey after your password when you sign in" @@ -4690,7 +4690,7 @@ msgstr "Attachments" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Audio" @@ -4851,14 +4851,14 @@ msgstr "Authentication" msgid "Authenticator" msgstr "Authenticator" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Authenticator app" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Authenticator code" @@ -4928,7 +4928,7 @@ msgstr "Authorised applications" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Away right now" msgid "Back" msgstr "Back" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Back to {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Back to roles" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Back to settings" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Back to sign-in" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Backup code" @@ -5351,7 +5356,7 @@ msgstr "Backup code" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Bookmark limit reached" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Calls" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Camera off" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Camera on" @@ -6364,9 +6369,9 @@ msgstr "Can't upload files here" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Can't upload files here" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Change emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Change friend nickname" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Change my group nickname" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Change nickname" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Channel actions" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Channel added to favourites" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Channel created" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Channel debug" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Channel deleted" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Channel record" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Channel removed from favourites" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Choose your profile accent colour" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Claim account" @@ -7715,7 +7720,7 @@ msgstr "Claim your account and verify your email to send reports." msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Claim your account to access security features like two-factor authentication and passkeys." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Clear quick CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Clear search" @@ -8103,7 +8108,7 @@ msgstr "Cloning is turned off" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Close" @@ -8160,11 +8165,9 @@ msgstr "Close to menu bar" msgid "Close to tray" msgstr "Close to tray" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Close window" @@ -8456,7 +8459,7 @@ msgstr "Communication" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Community debug" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Community default" @@ -8577,7 +8580,7 @@ msgstr "Community member record" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Community members" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Community notification level" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Community notification settings" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Comparison" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Complete mature content check" @@ -9093,7 +9096,7 @@ msgstr "Connection: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Context menus can be opened with left-click (on buttons) or right-click #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Continue" msgid "Continue to checkout" msgstr "Continue to checkout" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Continue to create a passkey for {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Continue to report community" msgid "Continue to report user" msgstr "Continue to report user" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Continue with passkey" @@ -9238,11 +9238,6 @@ msgstr "Continue with passkey" msgid "Continue with SSO" msgstr "Continue with SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Continue with your passkey to sign in to {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Coordinates raids, brigading, or harassment against people or communitie #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Copied" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Copy category ID" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Copy channel ID" @@ -9421,12 +9416,12 @@ msgstr "Copy channel link" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Copy code" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Copy community ID" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Copy invite URL" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Copy message" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Copy message ID" @@ -9570,7 +9565,7 @@ msgstr "Copy message ID" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Copy sticker URL" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Copy the setup key into your authenticator app." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Copy user ID" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Copy username" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Couldn't delete application" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Couldn't delete passkey" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Couldn't send invite" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Couldn't send invite. Try again." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Couldn't update mention suppression bypass" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Couldn't update passkey two-factor authentication" @@ -10206,6 +10201,11 @@ msgstr "Couldn't update the alt text. Please try again." msgid "Couldn't update voice activity sharing right now" msgstr "Couldn't update voice activity sharing right now" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Couldn't update your passkey. Try again." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Couldn't upload avatar" msgid "Couldn't upload banner" msgstr "Couldn't upload banner" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Couldn't use your passkey in the pop-up window. Try again." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Couldn't verify that code. Try again." msgid "Couldn't verify the connection" msgstr "Couldn't verify the connection" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Couldn't verify with passkey. Try again." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Cosy" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Create" @@ -10298,7 +10293,7 @@ msgstr "Create a new group with {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Create application" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Create category" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Create channel" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Create community" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Custom warning text" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Custom…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Debug" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Debug channel" @@ -11164,7 +11159,7 @@ msgstr "Debug message" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Debug user" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Delete {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Delete account" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Delete application" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Delete attachment" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Delete media" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Delete message" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Delete other members' messages. Pinning is controlled separately." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Delete passkey" @@ -11701,7 +11696,7 @@ msgstr "Describe what your community is about" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Description" @@ -11966,7 +11961,7 @@ msgstr "Device:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Direct input" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Direct message" @@ -12050,7 +12045,7 @@ msgstr "Direct message previews" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Direct messages" @@ -12077,14 +12072,14 @@ msgstr "Direct upload active" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Disable" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Disable account" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Disconnected" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Discoverable community" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Discriminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Dismiss" @@ -12477,7 +12472,7 @@ msgstr "DM & friend request settings" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM closed" @@ -12607,7 +12602,7 @@ msgstr "Doesn't block. You can reopen later." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domain" @@ -12697,7 +12692,7 @@ msgstr "Double-click someone to watch their stream." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Dutch" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "e.g., YubiKey, iPhone, work computer" @@ -13092,7 +13087,7 @@ msgstr "Edit global settings like name, description, and icon." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Edit group" @@ -13123,7 +13118,7 @@ msgstr "Edit media" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Edit message" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Eligible for a refund until {windowEndsOn}. This will also cancel your subscription immediately." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Email" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji updated" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojis" @@ -13525,7 +13520,7 @@ msgstr "Empty favourites" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Enable" @@ -13680,7 +13675,7 @@ msgstr "Enable mobile push notifications" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Enable notifications" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Enable the integrations whose credentials you have configured. Only available services are shown." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Enable two-factor auth" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "English (US)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Enhanced" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Enter new email" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Enter one of your backup codes if you can't use your passkey." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Enter one of your backup codes." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Enter text" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Enter the {digitCount}-digit code from your authenticator app or a backup code." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Enter the code before continuing." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Enter the code from your authenticator app." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Enter your name" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Enter your password." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Expired on <0>{expiredDate}. <1/> are no longer active. You can resubscribe at any time." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Expires" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Expression autocomplete" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Expression picker categories" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Failed to prepare emojis" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Failed to process the cropped image. Try again." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Failed to start SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Failed to switch account" @@ -15053,7 +15048,7 @@ msgstr "Favourited" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favourites" @@ -15268,6 +15263,11 @@ msgstr "Finish account setup" msgid "Finish account setup first" msgstr "Finish account setup first" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Finish in the new tab. If you closed it, press Continue with passkey again." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Folder name" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Folder settings" @@ -15479,7 +15479,7 @@ msgstr "For me" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "For this check, you send us a text message instead of receiving one from us." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "For your security, please confirm it's you to continue." @@ -15606,7 +15606,7 @@ msgstr "Forgot password" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Forgot your password?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Friends and small communities only" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Friends of friends" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "General" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Germany" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Get {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF URLs" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIFs" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Global shortcut" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Go back" @@ -16374,6 +16374,11 @@ msgstr "Go back" msgid "Go back and enter a valid email." msgstr "Go back and enter a valid email." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Go back to {productName} to continue." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Hide expiration footnotes" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Hide favourites" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Hide muted" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Hide muted channels" @@ -17358,7 +17363,7 @@ msgstr "Identity" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Idle" @@ -17818,7 +17823,7 @@ msgstr "Inappropriate profile" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Inbox" @@ -17867,7 +17872,7 @@ msgstr "Include the community ID." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Invite page preview" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Invite people" @@ -18456,7 +18461,7 @@ msgstr "Inviter:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Invites" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Join call" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Join community" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Joined {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Jump" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Kick a member from this community." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Kick member" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Leave call" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Leave community" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Link builder" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Link copied to clipboard" @@ -19859,8 +19864,8 @@ msgstr "Malware or dangerous links" msgid "Malware, credential theft, or harmful files." msgstr "Malware, credential theft, or harmful files." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Manage" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Manage accounts" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Manage apps and devices with access to your account" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Mark all unread inbox channels as read immediately, without asking to confirm" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Mark as read" @@ -20021,7 +20026,7 @@ msgstr "Mark as spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Mark as unread" @@ -20169,7 +20174,7 @@ msgstr "Mature community" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Mature content" @@ -20315,7 +20320,7 @@ msgstr "Measuring…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "members" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Members" @@ -20616,7 +20621,7 @@ msgstr "Mention this role?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Mentions" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "More media actions" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "More options" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Mute calls" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Mute category" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Mute communities" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Mute community" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Mute entrance sound" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Mute favourites" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Name must be at least 2 characters" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Name passkey" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Name passkey form" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Need an account?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Never" @@ -22276,7 +22281,7 @@ msgstr "Newest first" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Next" @@ -22905,7 +22910,7 @@ msgstr "No users found" msgid "No verification is required." msgstr "No verification is required." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "No verification methods available" @@ -23038,11 +23043,13 @@ msgstr "Not found" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Not now" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Note (only visible to you)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Nothing" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Notification overrides" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Notification settings" @@ -23152,7 +23159,7 @@ msgstr "Notification volume" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Off" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Okay" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Only members with the \"{manageCommunityPermissionLabel}\" permission can change this." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Only mentions" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Open {labelText} in settings" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Open {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Open direct messages" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Open DM" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Open invoice {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Open link" @@ -23850,7 +23857,7 @@ msgstr "Open quick switcher" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Open settings" @@ -23935,11 +23942,6 @@ msgstr "Open theme studio popout" msgid "Open theme studio…" msgstr "Open theme studio…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Open this window from {productName} to use your passkey." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Options" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Passkey" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Passkey name" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Passkey updated" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Passkeys" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Password" msgid "Password changed" msgstr "Password changed" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Paste the message link." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Personal dictionary" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Personal notes" @@ -24885,7 +24887,7 @@ msgstr "Pin group DM" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Pin message" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "pinned" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Pinned DM" @@ -25020,7 +25022,7 @@ msgstr "Platform admin" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Play" @@ -25318,6 +25320,11 @@ msgstr "Press a key, mouse button, or gamepad button to bind. Escape cancels." msgid "Press a shortcut…" msgstr "Press a shortcut…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Press Continue to use your passkey." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Primary language" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Primary navigation" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Privacy policy" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Privacy settings" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Pro tip:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Proceed" @@ -26090,7 +26097,7 @@ msgstr "React with {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Regenerating will invalidate the current token. Update any code that uses the old value." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Register" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Registered passkeys" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Remove banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Remove bookmark" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Remove from dictionary" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Remove from favourites" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Removed from favourite GIFs" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Removed from favourites" @@ -27032,7 +27039,7 @@ msgstr "Removing permissions could limit the bot's features." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Rename" @@ -27119,7 +27126,7 @@ msgstr "Replies" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Reply" @@ -27209,7 +27216,7 @@ msgstr "Report issue" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Report message" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Require 2FA for moderation actions" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Require a passkey as your second factor" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Reset link invalid or expired" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Reset mature content agreement state" @@ -27880,7 +27887,7 @@ msgstr "Reverse image" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Reverse image search" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Review and confirm" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Review apps that can access your account." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Review past purchases and refund options" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Review signed-in devices and sign out of sessions you don't recognise." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Role updated" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Roles" @@ -28261,7 +28268,7 @@ msgstr "Saturation" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Scope" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Scopes" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Screen reader" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Search for channels, people, or communities" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Search friends" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Search selected text" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Search settings" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Search settings…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Security" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Security features" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Security key" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Security key / passkey" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Sensitive media" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Sent" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Session" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Session expired for {identifier}. Sign in again." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Sets the level for every sound effect. Per-sound overrides ignore this." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Settings opened." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Settings sections" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Sidebar" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Sign in" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Sign in to claim your gift" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Sign in via browser" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Sign in with a passkey" @@ -30666,7 +30673,7 @@ msgstr "Sign in with your organisation's single sign-on provider." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Sign out" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Sign-in details" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Sign-in flow" @@ -31189,7 +31196,7 @@ msgstr "Some users can't be added" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Something went wrong" @@ -31374,7 +31381,7 @@ msgstr "Sound volume" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Sounds" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Start uploading attachments as soon as they are added to the message input" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Start video call" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Start voice call" @@ -31899,7 +31906,7 @@ msgstr "sticker" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Sticker: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Stickers" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Stop trusting all links?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Stop using passkeys for two-factor authentication?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Suppress all role mentions" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Suppress embeds" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "text channel" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Text channel" @@ -33055,7 +33062,7 @@ msgstr "Text us from your phone" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Text-to-speech" @@ -33119,6 +33126,11 @@ msgstr "That did not finish. Some communities may already have been left, and yo msgid "That did not go through. Nothing changed. Try again." msgstr "That did not go through. Nothing changed. Try again." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "That didn’t work. Try again or cancel." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "That doesn't look like a valid colour. Try hex, rgb(), hsl(), or a CSS colour name." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "That image could not be used. Try a different file." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "That image is invalid. Try another one." @@ -34035,11 +34047,11 @@ msgstr "This is the second option description" msgid "This is the third option description" msgstr "This is the third option description" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." @@ -34154,16 +34166,6 @@ msgstr "This participant is deafened" msgid "This participant was deafened by moderators" msgstr "This participant was deafened by moderators" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "This passkey request could not be verified. Close this window and try again." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "This passkey request timed out. Close this window and try again." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "This removes all trusted domains. You will see the external link warning msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "This request has expired. Go back and try again." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "This reset link has expired. Reset links last 1 hour. Please request a new one." @@ -34807,7 +34814,7 @@ msgstr "Transfer group ownership to {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Transfer ownership" @@ -34823,7 +34830,7 @@ msgstr "Transferred ownership to {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Translate" @@ -34980,7 +34987,7 @@ msgstr "Try a different variable name or clear the search." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Try again" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Try again" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Try again in a moment." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Try searching for something like \"theme\", \"notifications\", or \"privacy\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Try security key / passkey instead" @@ -35088,7 +35095,7 @@ msgstr "Turkish" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Turn off" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Turn off audio sharing for this source or try again in a moment." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Turn off camera" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Turn off streaming privacy before viewing login or account security details." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Turn on" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Two-factor" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Two-factor authentication" @@ -35288,7 +35295,7 @@ msgstr "Two-factor authentication disabled" msgid "Two-factor authentication enabled" msgstr "Two-factor authentication enabled" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Two-factor authentication is enabled" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Unblock user" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Uncategorised" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Underline website links" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Understood" @@ -35643,7 +35650,7 @@ msgstr "Universal fallback. Lowest quality, but it works everywhere." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Unmute all devices" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Unmute category" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Unmute communities" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Unmute community" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Unmute DMs" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Unmute favourites" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Unpin it" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Unpin message" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Unpin this message?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Unpinned DM" @@ -36193,6 +36200,11 @@ msgstr "Update email" msgid "Update my status" msgstr "Update my status" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Update passkey" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Update timeout" msgid "Update your own nickname." msgstr "Update your own nickname." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Update your passkey" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Use a dedicated modal to set a message history threshold date for member msgid "Use a different email address and verify it with a code." msgstr "Use a different email address and verify it with a code." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Use a password manager passkey" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Use actual value" msgid "Use alternative method" msgstr "Use alternative method" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Use an authenticator app to generate codes for two-factor authentication" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Use only if it clearly breaks {productName}'s rules and doesn't fit above." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Use passkeys for two-factor authentication?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Use passkeys to sign in without a password" @@ -36824,9 +36836,8 @@ msgstr "Use voice activity" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." -# auto-i18n: reviewed unchanged -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Use your passkey" @@ -36895,7 +36906,7 @@ msgid "User controls" msgstr "User controls" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "User debug" @@ -36973,7 +36984,7 @@ msgstr "User volume" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37159,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verification cancelled" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Verification code" @@ -37186,7 +37197,7 @@ msgstr "Verification email sent. Check your inbox." msgid "Verification expired" msgstr "Verification expired" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37203,7 +37214,7 @@ msgid "Verified community" msgstr "Verified community" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verify" @@ -37222,17 +37233,17 @@ msgid "Verify connection" msgstr "Verify connection" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Verify email" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Verify identity form" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Verify it's you" @@ -37275,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Verify your email address to send friend requests." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Verify your email before adding a passkey." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Verify your email before adding an authenticator app." @@ -37572,7 +37583,7 @@ msgstr "View and manage banned users." msgid "View and manage every webhook configured across your community." msgstr "View and manage every webhook configured across your community." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "View and manage your backup codes for account recovery" @@ -37606,7 +37617,7 @@ msgstr "View channel" msgid "View channel members" msgstr "View channel members" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "View codes" @@ -37691,7 +37702,7 @@ msgid "View plans" msgstr "View plans" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "View profile" @@ -37933,7 +37944,7 @@ msgid "voice channel" msgstr "voice channel" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Voice channel" @@ -38074,7 +38085,7 @@ msgstr "Void" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38132,7 +38143,7 @@ msgstr "Wait here" msgid "Waiting for connection..." msgstr "Waiting for connection..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Waiting for passkey…" @@ -38179,7 +38190,7 @@ msgid "Watch" msgstr "Watch" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Watch stream" @@ -38541,7 +38552,7 @@ msgid "Website previews" msgstr "Website previews" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Welcome back" @@ -39067,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "You aren't in any communities right now." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "You blocked {userName}. You won't be able to send messages unless you unblock them." @@ -39102,6 +39113,11 @@ msgstr "You can cancel the deletion process within 14 days" msgid "You can close this modal. The import will continue in the background." msgstr "You can close this modal. The import will continue in the background." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "You can close this tab" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "You can now close this tab and return to the app." @@ -39245,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "You can't send a friend request to yourself." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "You can't send messages in this channel." @@ -39608,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "You will still need to finish the email step." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." @@ -39627,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "You'll have to sign back in on all signed-out devices" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." @@ -39919,12 +39935,12 @@ msgstr "Your account is too new to send messages in this community." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Your account request is pending approval. You can sign in after an admin approves it." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." @@ -39942,17 +39958,6 @@ msgstr "Your action could not be completed because it was flagged by our safety msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Your application is pending review. You can still update your listing details or withdraw the application." -# auto-i18n: reviewed unchanged -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Your browser doesn't support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39993,6 +39998,17 @@ msgstr "Your community needs at least {minMemberCount, plural, one {# member} ot msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Your device will ask you to save an updated passkey for {name}. It replaces the old one." + +# auto-i18n: reviewed unchanged +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40319,7 +40335,7 @@ msgstr "Zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40330,7 +40346,7 @@ msgstr "Zoom in" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/en-US/messages.po b/fluxer_app/src/features/i18n/locales/en-US/messages.po index d706245c3..8cf7578ec 100644 --- a/fluxer_app/src/features/i18n/locales/en-US/messages.po +++ b/fluxer_app/src/features/i18n/locales/en-US/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {member} other {members}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# mention} other {# mentions}}" @@ -2370,8 +2370,8 @@ msgstr "6 months" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-digit code" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Account & premium overrides" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Account access" @@ -2807,7 +2807,7 @@ msgstr "Active monthly subscriber (cancellation scheduled)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Add an account to continue." msgid "Add an email and password to your account first." msgstr "Add an email and password to your account first." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Add an extra layer of security to your account" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Add bot to a destination" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Add channel" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Add new reactions to messages." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Add note" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Add override" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Add passkey" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Add reaction" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Add to dictionary" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Add to favorites" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Added to favorite GIFs" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Added to favorites" @@ -3296,11 +3296,11 @@ msgstr "Added to favorites" msgid "Added to saved media" msgstr "Added to saved media" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Added: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Added: {createdDate} • last used: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "All languages" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "All messages" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Already deleted" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Already have an account?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "App zoom" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "App zoom level" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Approve" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Approve this app from the {productName} app you already use. No password needed." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Are you sure you want to delete the category \"{categoryName}\"? This cannot be undone." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Are you sure you want to delete the passkey <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Are you sure you want to delete this attachment? This action cannot be u msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Are you sure you want to delete this passkey?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Ask before starting calls" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Ask for a passkey after your password when you sign in" @@ -4690,7 +4690,7 @@ msgstr "Attachments" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Audio" @@ -4851,14 +4851,14 @@ msgstr "Authentication" msgid "Authenticator" msgstr "Authenticator" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Authenticator app" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Authenticator code" @@ -4928,7 +4928,7 @@ msgstr "Authorized applications" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Away right now" msgid "Back" msgstr "Back" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Back to {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Back to roles" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Back to settings" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Back to sign-in" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Backup code" @@ -5351,7 +5356,7 @@ msgstr "Backup code" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Bookmark limit reached" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Calls" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Camera off" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Camera on" @@ -6364,9 +6369,9 @@ msgstr "Can't upload files here" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Can't upload files here" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Change emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Change friend nickname" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Change my group nickname" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Change nickname" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Channel actions" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Channel added to favorites" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Channel created" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Channel debug" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Channel deleted" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Channel record" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Channel removed from favorites" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Choose your profile accent color" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Claim account" @@ -7715,7 +7720,7 @@ msgstr "Claim your account and verify your email to send reports." msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Claim your account to access security features like two-factor authentication and passkeys." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Clear quick CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Clear search" @@ -8103,7 +8108,7 @@ msgstr "Cloning is turned off" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Close" @@ -8160,11 +8165,9 @@ msgstr "Close to menu bar" msgid "Close to tray" msgstr "Close to tray" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Close window" @@ -8456,7 +8459,7 @@ msgstr "Communication" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Community debug" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Community default" @@ -8577,7 +8580,7 @@ msgstr "Community member record" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Community members" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Community notification level" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Community notification settings" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Comparison" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Complete mature content check" @@ -9093,7 +9096,7 @@ msgstr "Connection: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Context menus can be opened with left-click (on buttons) or right-click #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Continue" msgid "Continue to checkout" msgstr "Continue to checkout" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Continue to create a passkey for {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Continue to report community" msgid "Continue to report user" msgstr "Continue to report user" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Continue with passkey" @@ -9238,11 +9238,6 @@ msgstr "Continue with passkey" msgid "Continue with SSO" msgstr "Continue with SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Continue with your passkey to sign in to {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Coordinates raids, brigading, or harassment against people or communitie #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Copied" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Copy category ID" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Copy channel ID" @@ -9421,12 +9416,12 @@ msgstr "Copy channel link" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Copy code" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Copy community ID" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Copy invite URL" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Copy message" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Copy message ID" @@ -9570,7 +9565,7 @@ msgstr "Copy message ID" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Copy sticker URL" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Copy the setup key into your authenticator app." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Copy user ID" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Copy username" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Couldn't delete application" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Couldn't delete passkey" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Couldn't send invite" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Couldn't send invite. Try again." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Couldn't update mention suppression bypass" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Couldn't update passkey two-factor authentication" @@ -10206,6 +10201,11 @@ msgstr "Couldn't update the alt text. Please try again." msgid "Couldn't update voice activity sharing right now" msgstr "Couldn't update voice activity sharing right now" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Couldn't update your passkey. Try again." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Couldn't upload avatar" msgid "Couldn't upload banner" msgstr "Couldn't upload banner" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Couldn't use your passkey in the pop-up window. Try again." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Couldn't verify that code. Try again." msgid "Couldn't verify the connection" msgstr "Couldn't verify the connection" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Couldn't verify with passkey. Try again." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Cozy" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Create" @@ -10298,7 +10293,7 @@ msgstr "Create a new group with {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Create application" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Create category" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Create channel" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Create community" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Custom warning text" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Custom…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Debug" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Debug channel" @@ -11164,7 +11159,7 @@ msgstr "Debug message" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Debug user" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Delete {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Delete account" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Delete application" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Delete attachment" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Delete media" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Delete message" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Delete other members' messages. Pinning is controlled separately." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Delete passkey" @@ -11701,7 +11696,7 @@ msgstr "Describe what your community is about" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Description" @@ -11966,7 +11961,7 @@ msgstr "Device:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Direct input" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Direct message" @@ -12050,7 +12045,7 @@ msgstr "Direct message previews" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Direct messages" @@ -12077,14 +12072,14 @@ msgstr "Direct upload active" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Disable" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Disable account" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Disconnected" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Discoverable community" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Discriminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Dismiss" @@ -12477,7 +12472,7 @@ msgstr "DM & friend request settings" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM closed" @@ -12607,7 +12602,7 @@ msgstr "Doesn't block. You can reopen later." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domain" @@ -12697,7 +12692,7 @@ msgstr "Double-click someone to watch their stream." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Dutch" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "e.g., YubiKey, iPhone, work computer" @@ -13092,7 +13087,7 @@ msgstr "Edit global settings like name, description, and icon." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Edit group" @@ -13123,7 +13118,7 @@ msgstr "Edit media" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Edit message" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Eligible for a refund until {windowEndsOn}. This will also cancel your subscription immediately." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Email" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji updated" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojis" @@ -13525,7 +13520,7 @@ msgstr "Empty favorites" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Enable" @@ -13680,7 +13675,7 @@ msgstr "Enable mobile push notifications" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Enable notifications" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Enable the integrations whose credentials you have configured. Only available services are shown." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Enable two-factor auth" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "English (US)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Enhanced" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Enter new email" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Enter one of your backup codes if you can't use your passkey." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Enter one of your backup codes." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Enter text" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Enter the {digitCount}-digit code from your authenticator app or a backup code." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Enter the code before continuing." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Enter the code from your authenticator app." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Enter your name" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Enter your password." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Expired on <0>{expiredDate}. <1/> are no longer active. You can resubscribe at any time." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Expires" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Expression autocomplete" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Expression picker categories" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Failed to prepare emojis" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Failed to process the cropped image. Try again." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Failed to start SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Failed to switch account" @@ -15053,7 +15048,7 @@ msgstr "Favorited" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favorites" @@ -15268,6 +15263,11 @@ msgstr "Finish account setup" msgid "Finish account setup first" msgstr "Finish account setup first" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Finish in the new tab. If you closed it, press Continue with passkey again." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Folder name" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Folder settings" @@ -15479,7 +15479,7 @@ msgstr "For me" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "For this check, you send us a text message instead of receiving one from us." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "For your security, please confirm it's you to continue." @@ -15606,7 +15606,7 @@ msgstr "Forgot password" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Forgot your password?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Friends and small communities only" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Friends of friends" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "General" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Germany" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Get {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF URLs" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIFs" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Global shortcut" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Go back" @@ -16374,6 +16374,11 @@ msgstr "Go back" msgid "Go back and enter a valid email." msgstr "Go back and enter a valid email." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Go back to {productName} to continue." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Hide expiration footnotes" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Hide favorites" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Hide muted" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Hide muted channels" @@ -17358,7 +17363,7 @@ msgstr "Identity" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Idle" @@ -17818,7 +17823,7 @@ msgstr "Inappropriate profile" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Inbox" @@ -17867,7 +17872,7 @@ msgstr "Include the community ID." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Invite page preview" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Invite people" @@ -18456,7 +18461,7 @@ msgstr "Inviter:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Invites" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Join call" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Join community" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Joined {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Jump" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Kick a member from this community." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Kick member" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Leave call" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Leave community" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Link builder" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Link copied to clipboard" @@ -19859,8 +19864,8 @@ msgstr "Malware or dangerous links" msgid "Malware, credential theft, or harmful files." msgstr "Malware, credential theft, or harmful files." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Manage" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Manage accounts" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Manage apps and devices with access to your account" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Mark all unread inbox channels as read immediately, without asking to confirm" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Mark as read" @@ -20021,7 +20026,7 @@ msgstr "Mark as spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Mark as unread" @@ -20169,7 +20174,7 @@ msgstr "Mature community" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Mature content" @@ -20315,7 +20320,7 @@ msgstr "Measuring…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "members" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Members" @@ -20616,7 +20621,7 @@ msgstr "Mention this role?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Mentions" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "More media actions" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "More options" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Mute calls" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Mute category" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Mute communities" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Mute community" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Mute entrance sound" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Mute favorites" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Name must be at least 2 characters" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Name passkey" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Name passkey form" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Need an account?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Never" @@ -22276,7 +22281,7 @@ msgstr "Newest first" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Next" @@ -22905,7 +22910,7 @@ msgstr "No users found" msgid "No verification is required." msgstr "No verification is required." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "No verification methods available" @@ -23038,11 +23043,13 @@ msgstr "Not found" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Not now" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Note (only visible to you)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Nothing" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Notification overrides" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Notification settings" @@ -23152,7 +23159,7 @@ msgstr "Notification volume" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Off" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Okay" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Only members with the \"{manageCommunityPermissionLabel}\" permission can change this." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Only mentions" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Open {labelText} in settings" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Open {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Open direct messages" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Open DM" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Open invoice {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Open link" @@ -23850,7 +23857,7 @@ msgstr "Open quick switcher" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Open settings" @@ -23935,11 +23942,6 @@ msgstr "Open theme studio popout" msgid "Open theme studio…" msgstr "Open theme studio…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Open this window from {productName} to use your passkey." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Options" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Passkey" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Passkey name" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Passkey updated" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Passkeys" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Password" msgid "Password changed" msgstr "Password changed" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Paste the message link." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Personal dictionary" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Personal notes" @@ -24885,7 +24887,7 @@ msgstr "Pin group DM" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Pin message" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "pinned" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Pinned DM" @@ -25020,7 +25022,7 @@ msgstr "Platform admin" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Play" @@ -25318,6 +25320,11 @@ msgstr "Press a key, mouse button, or gamepad button to bind. Escape cancels." msgid "Press a shortcut…" msgstr "Press a shortcut…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Press Continue to use your passkey." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Primary language" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Primary navigation" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Privacy policy" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Privacy settings" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Pro tip:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Proceed" @@ -26090,7 +26097,7 @@ msgstr "React with {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Regenerating will invalidate the current token. Update any code that uses the old value." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Register" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Registered passkeys" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Remove banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Remove bookmark" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Remove from dictionary" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Remove from favorites" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Removed from favorite GIFs" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Removed from favorites" @@ -27032,7 +27039,7 @@ msgstr "Removing permissions could limit the bot's features." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Rename" @@ -27119,7 +27126,7 @@ msgstr "Replies" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Reply" @@ -27209,7 +27216,7 @@ msgstr "Report issue" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Report message" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Require 2FA for moderation actions" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Require a passkey as your second factor" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Reset link invalid or expired" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Reset mature content agreement state" @@ -27880,7 +27887,7 @@ msgstr "Reverse image" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Reverse image search" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Review and confirm" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Review apps that can access your account." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Review past purchases and refund options" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Review signed-in devices and sign out of sessions you don't recognize." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Role updated" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Roles" @@ -28261,7 +28268,7 @@ msgstr "Saturation" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Scope" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Scopes" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Screen reader" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Search for channels, people, or communities" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Search friends" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Search selected text" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Search settings" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Search settings…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Security" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Security features" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Security key" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Security key / passkey" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Sensitive media" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Sent" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Session" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Session expired for {identifier}. Sign in again." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Sets the level for every sound effect. Per-sound overrides ignore this." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Settings opened." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Settings sections" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Sidebar" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Sign in" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Sign in to claim your gift" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Sign in via browser" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Sign in with a passkey" @@ -30666,7 +30673,7 @@ msgstr "Sign in with your organization's single sign-on provider." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Sign out" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Sign-in details" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Sign-in flow" @@ -31189,7 +31196,7 @@ msgstr "Some users can't be added" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Something went wrong" @@ -31374,7 +31381,7 @@ msgstr "Sound volume" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Sounds" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Start uploading attachments as soon as they are added to the message input" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Start video call" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Start voice call" @@ -31899,7 +31906,7 @@ msgstr "sticker" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Sticker: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Stickers" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Stop trusting all links?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Stop using passkeys for two-factor authentication?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Suppress all role mentions" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Suppress embeds" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "text channel" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Text channel" @@ -33055,7 +33062,7 @@ msgstr "Text us from your phone" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Text-to-speech" @@ -33119,6 +33126,11 @@ msgstr "That did not finish. Some communities may already have been left, and yo msgid "That did not go through. Nothing changed. Try again." msgstr "That did not go through. Nothing changed. Try again." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "That didn't work. Try again or cancel." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "That image could not be used. Try a different file." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "That image is invalid. Try another one." @@ -34035,11 +34047,11 @@ msgstr "This is the second option description" msgid "This is the third option description" msgstr "This is the third option description" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." @@ -34154,16 +34166,6 @@ msgstr "This participant is deafened" msgid "This participant was deafened by moderators" msgstr "This participant was deafened by moderators" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "This passkey request could not be verified. Close this window and try again." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "This passkey request timed out. Close this window and try again." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "This removes all trusted domains. You will see the external link warning msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "This request has expired. Go back and try again." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "This reset link has expired. Reset links last 1 hour. Please request a new one." @@ -34807,7 +34814,7 @@ msgstr "Transfer group ownership to {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Transfer ownership" @@ -34823,7 +34830,7 @@ msgstr "Transferred ownership to {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Translate" @@ -34980,7 +34987,7 @@ msgstr "Try a different variable name or clear the search." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Try again" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Try again" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Try again in a moment." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Try searching for something like \"theme\", \"notifications\", or \"privacy\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Try security key / passkey instead" @@ -35088,7 +35095,7 @@ msgstr "Turkish" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Turn off" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Turn off audio sharing for this source or try again in a moment." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Turn off camera" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Turn off streaming privacy before viewing login or account security details." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Turn on" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Two-factor" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Two-factor authentication" @@ -35288,7 +35295,7 @@ msgstr "Two-factor authentication disabled" msgid "Two-factor authentication enabled" msgstr "Two-factor authentication enabled" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Two-factor authentication is enabled" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Unblock user" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Uncategorized" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Underline website links" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Understood" @@ -35643,7 +35650,7 @@ msgstr "Universal fallback. Lowest quality, but it works everywhere." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Unmute all devices" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Unmute category" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Unmute communities" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Unmute community" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Unmute DMs" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Unmute favorites" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Unpin it" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Unpin message" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Unpin this message?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Unpinned DM" @@ -36193,6 +36200,11 @@ msgstr "Update email" msgid "Update my status" msgstr "Update my status" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Update passkey" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Update timeout" msgid "Update your own nickname." msgstr "Update your own nickname." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Update your passkey" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Use a dedicated modal to set a message history threshold date for member msgid "Use a different email address and verify it with a code." msgstr "Use a different email address and verify it with a code." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Use a password manager passkey" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Use actual value" msgid "Use alternative method" msgstr "Use alternative method" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Use an authenticator app to generate codes for two-factor authentication" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Use only if it clearly breaks {productName}'s rules and doesn't fit above." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Use passkeys for two-factor authentication?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Use passkeys to sign in without a password" @@ -36824,8 +36836,8 @@ msgstr "Use voice activity" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Use your passkey" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "User controls" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "User debug" @@ -36972,7 +36984,7 @@ msgstr "User volume" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verification canceled" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Verification code" @@ -37185,7 +37197,7 @@ msgstr "Verification email sent. Check your inbox." msgid "Verification expired" msgstr "Verification expired" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Verified community" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verify" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Verify connection" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Verify email" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Verify identity form" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Verify it's you" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Verify your email address to send friend requests." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Verify your email before adding a passkey." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Verify your email before adding an authenticator app." @@ -37571,7 +37583,7 @@ msgstr "View and manage banned users." msgid "View and manage every webhook configured across your community." msgstr "View and manage every webhook configured across your community." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "View and manage your backup codes for account recovery" @@ -37605,7 +37617,7 @@ msgstr "View channel" msgid "View channel members" msgstr "View channel members" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "View codes" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "View plans" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "View profile" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "voice channel" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Voice channel" @@ -38073,7 +38085,7 @@ msgstr "Void" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Wait here" msgid "Waiting for connection..." msgstr "Waiting for connection..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Waiting for passkey…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Watch" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Watch stream" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Website previews" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Welcome back" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "You aren't in any communities right now." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "You blocked {userName}. You won't be able to send messages unless you unblock them." @@ -39101,6 +39113,11 @@ msgstr "You can cancel the deletion process within 14 days" msgid "You can close this modal. The import will continue in the background." msgstr "You can close this modal. The import will continue in the background." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "You can close this tab" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "You can now close this tab and return to the app." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "You can't send a friend request to yourself." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "You can't send messages in this channel." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "You will still need to finish the email step." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "You'll have to sign back in on all signed-out devices" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." @@ -39918,12 +39935,12 @@ msgstr "Your account is too new to send messages in this community." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Your account request is pending approval. You can sign in after an admin approves it." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." @@ -39941,16 +39958,6 @@ msgstr "Your action could not be completed because it was flagged by our safety msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Your application is pending review. You can still update your listing details or withdraw the application." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Your community needs at least {minMemberCount, plural, one {# member} ot msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Your device will ask you to save an updated passkey for {name}. It replaces the old one." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Zoom in" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/es-419/messages.po b/fluxer_app/src/features/i18n/locales/es-419/messages.po index d6e260bf0..aa230462c 100644 --- a/fluxer_app/src/features/i18n/locales/es-419/messages.po +++ b/fluxer_app/src/features/i18n/locales/es-419/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {miembro} other {miembros}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# mención} many {# menciones} other {# menciones}}" @@ -2370,8 +2370,8 @@ msgstr "6 meses" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "Código de 6 dígitos" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Estados forzados de cuenta y premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Acceso a la cuenta" @@ -2807,7 +2807,7 @@ msgstr "Suscriptor mensual activo (cancelación programada)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Agrega una cuenta para continuar." msgid "Add an email and password to your account first." msgstr "Primero, agrega un correo electrónico y una contraseña a tu cuenta." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Agrega una capa adicional de seguridad a tu cuenta" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Agregar bot a un destino" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Agregar canal" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Agrega reacciones nuevas a los mensajes." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Agregar nota" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Agregar permisos específicos" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Agregar llave de acceso" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Agregar reacción" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Agregar al diccionario" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Agregar a favoritos" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Agregado a tus GIF favoritos" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Agregado a favoritos" @@ -3296,11 +3296,11 @@ msgstr "Agregado a favoritos" msgid "Added to saved media" msgstr "Agregado a contenido multimedia guardado" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Agregado: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Agregado: {createdDate} • última vez usado: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Todos los idiomas" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Todos los mensajes" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Ya se eliminó" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "¿Ya tienes una cuenta?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Zoom de la app" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Nivel de zoom de la app" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Aprobar" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Aprueba esta app desde la app {productName} que ya usas. No necesitas contraseña." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "¿Seguro que quieres eliminar la categoría \"{categoryName}\"? Esto no se puede deshacer." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "¿Seguro que quieres eliminar la llave de acceso <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "¿Quieres eliminar este archivo adjunto? Esta acción no se puede deshac msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "¿De verdad quieres eliminar esta comunidad? Esta acción no se puede deshacer. Se eliminarán permanentemente todos los canales, mensajes y la configuración." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "¿Seguro que quieres eliminar esta llave de acceso?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Preguntar antes de iniciar llamadas" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Solicitar una llave de acceso después de tu contraseña al iniciar sesión" @@ -4690,7 +4690,7 @@ msgstr "Archivos adjuntos" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Audio" @@ -4851,14 +4851,14 @@ msgstr "Autenticación" msgid "Authenticator" msgstr "Autenticador" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "App de autenticación" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Código de autenticación" @@ -4928,7 +4928,7 @@ msgstr "Aplicaciones autorizadas" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Ausente en este momento" msgid "Back" msgstr "Atrás" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Volver a {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Volver a roles" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Volver a la configuración" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Volver a iniciar sesión" @@ -5342,8 +5347,8 @@ msgstr "Retroceso" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Código de respaldo" @@ -5351,7 +5356,7 @@ msgstr "Código de respaldo" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Límite de mensajes guardados alcanzado" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Llamadas" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Cámara apagada" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Cámara encendida" @@ -6364,9 +6369,9 @@ msgstr "No se pueden subir archivos aquí" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "No se pueden subir archivos aquí" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Cambiar emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Cambiar apodo de amigo" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Cambiar mi apodo en el grupo" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Cambiar apodo" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Acciones del canal" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Canal agregado a favoritos" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Canal creado" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Depuración de canal" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Canal eliminado" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Registro del canal" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Canal eliminado de favoritos" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Elige el color de énfasis de tu perfil" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Completar el registro" @@ -7715,7 +7720,7 @@ msgstr "Completa el registro de tu cuenta y verifica tu correo electrónico para msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Completa el registro de tu cuenta agregando un correo electrónico y una contraseña. Te enviaremos un código de verificación para confirmar tu correo antes de finalizar." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Completa el registro de tu cuenta para acceder a funciones de seguridad como la autenticación de dos factores y las llaves de acceso." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "¿Borrar CSS rápido?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Borrar búsqueda" @@ -8103,7 +8108,7 @@ msgstr "Clonación desactivada" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Cerrar" @@ -8160,11 +8165,9 @@ msgstr "Mantener en la barra de menús al cerrar" msgid "Close to tray" msgstr "Mantener en la bandeja al cerrar" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Cerrar ventana" @@ -8456,7 +8459,7 @@ msgstr "Comunicación" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Depuración de comunidad" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Predeterminado de la comunidad" @@ -8577,7 +8580,7 @@ msgstr "Registro de miembro de la comunidad" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Miembros de la comunidad" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Nivel de notificación de la comunidad" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Configuración de notificaciones de la comunidad" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Comparación" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Completar verificación de contenido para adultos" @@ -9093,7 +9096,7 @@ msgstr "Conexión: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Los menús contextuales se pueden abrir con un clic izquierdo (en botone #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Continuar" msgid "Continue to checkout" msgstr "Continuar con el pago" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Continuar para crear una llave de acceso para {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Continuar para reportar a la comunidad" msgid "Continue to report user" msgstr "Continuar para reportar al usuario" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Continuar con llave de acceso" @@ -9238,11 +9238,6 @@ msgstr "Continuar con llave de acceso" msgid "Continue with SSO" msgstr "Continuar con SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Continuar con tu llave de acceso para iniciar sesión en {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Coordina ataques, acoso o intimidación contra personas o comunidades." #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Copiado" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Copiar ID de la categoría" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Copiar ID del canal" @@ -9421,12 +9416,12 @@ msgstr "Copiar enlace del canal" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Copiar código" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Copiar ID de la comunidad" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Copiar enlace de invitación" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Copiar mensaje" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Copiar ID de mensaje" @@ -9570,7 +9565,7 @@ msgstr "Copiar ID de mensaje" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Copiar URL del sticker" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Copia la clave de configuración en tu aplicación de autenticación." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Copiar ID de usuario" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Copiar nombre de usuario" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "No se pudo eliminar la aplicación" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "No se pudo eliminar la llave de acceso" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "No se pudo enviar la invitación" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "No se pudo enviar la invitación. Intenta de nuevo." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "No se pudo actualizar la omisión de supresión de menciones" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "No se pudo actualizar la autenticación de dos factores con llave de acceso" @@ -10206,6 +10201,11 @@ msgstr "No se pudo actualizar el texto alternativo. Intenta de nuevo." msgid "Couldn't update voice activity sharing right now" msgstr "No se pudo actualizar la opción de compartir actividad de voz en este momento" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "No se pudo actualizar tu llave de acceso. Intenta de nuevo." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "No se pudo subir el avatar" msgid "Couldn't upload banner" msgstr "No se pudo subir el banner" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "No se pudo usar tu llave de acceso en la ventana emergente. Intenta de nuevo." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "No se pudo verificar el código. Intenta de nuevo." msgid "Couldn't verify the connection" msgstr "No se pudo verificar la conexión" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "No se pudo verificar con la llave de acceso. Intenta de nuevo." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Acogedor" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Crear" @@ -10298,7 +10293,7 @@ msgstr "Crear un grupo nuevo con {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Crear aplicación" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Crear categoría" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Crear canal" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Crear comunidad" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Texto de advertencia personalizado" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Personalizar…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Depurar" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Depurar canal" @@ -11164,7 +11159,7 @@ msgstr "Depurar mensaje" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Depurar usuario" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Eliminar {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Eliminar cuenta" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Eliminar aplicación" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Eliminar archivo adjunto" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Eliminar contenido multimedia" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Eliminar mensaje" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Eliminar mensajes de otros miembros. Fijar mensajes se controla por separado." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Eliminar llave de acceso" @@ -11701,7 +11696,7 @@ msgstr "Describe de qué trata tu comunidad" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Descripción" @@ -11966,7 +11961,7 @@ msgstr "Dispositivo:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Entrada directa" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Mensaje directo" @@ -12050,7 +12045,7 @@ msgstr "Previsualizaciones de mensajes directos" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Mensajes directos" @@ -12077,14 +12072,14 @@ msgstr "Subida directa activa" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Desactivar" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Desactivar cuenta" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Desconectado" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Comunidad que aparece en Descubrir" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Discriminador" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Descartar" @@ -12477,7 +12472,7 @@ msgstr "Configuración de MD y solicitudes de amistad" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "MD cerrado" @@ -12607,7 +12602,7 @@ msgstr "No bloquea. Puedes reabrirlo más tarde." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Dominio" @@ -12697,7 +12692,7 @@ msgstr "Haz doble clic en alguien para ver su transmisión." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Neerlandés" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "ej., YubiKey, iPhone, computadora del trabajo" @@ -13092,7 +13087,7 @@ msgstr "Edita la configuración global, como el nombre, la descripción y el íc #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Editar grupo" @@ -13123,7 +13118,7 @@ msgstr "Editar contenido multimedia" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Editar mensaje" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Puedes solicitar un reembolso hasta el {windowEndsOn}. Esto también cancelará tu suscripción de inmediato." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Correo electrónico" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji actualizado" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojis" @@ -13525,7 +13520,7 @@ msgstr "Favoritos vacíos" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Habilitar" @@ -13680,7 +13675,7 @@ msgstr "Activar notificaciones push en el celular" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Activar notificaciones" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Habilita las integraciones cuyas credenciales hayas configurado. Solo se muestran los servicios disponibles." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Activar la autenticación de dos factores" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Inglés (EE. UU.)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Mejorado" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Ingresa el correo electrónico nuevo" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Ingresa uno de tus códigos de respaldo si no puedes usar tu llave de acceso." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Ingresa uno de tus códigos de respaldo." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Escribe texto" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Ingresa el código de {digitCount} dígitos de tu aplicación de autenticación o un código de respaldo." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Ingresa el código antes de continuar." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Ingresa el código de tu app de autenticación." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Ingresa tu nombre" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Ingresa tu contraseña." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Venció el <0>{expiredDate}. Los <1/> ya no están activos. Puedes volver a suscribirte en cualquier momento." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Vence" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Autocompletar expresiones" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Categorías del selector de expresiones" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "No se pudieron preparar los emojis" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "No se pudo procesar la imagen recortada. Intenta de nuevo." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "No se pudo iniciar la autenticación con SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "No se pudo cambiar de cuenta" @@ -15053,7 +15048,7 @@ msgstr "Favoritos" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favoritos" @@ -15268,6 +15263,11 @@ msgstr "Completar el registro de la cuenta" msgid "Finish account setup first" msgstr "Completa primero el registro de tu cuenta" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Termina en la nueva pestaña. Si la cerraste, vuelve a presionar Continuar con llave de acceso." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Nombre de la carpeta" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Configuración de la carpeta" @@ -15479,7 +15479,7 @@ msgstr "Para mí" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Para esta verificación, nos envías un mensaje de texto en lugar de recibir uno nuestro." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Para tu seguridad, confirma que eres tú para continuar." @@ -15606,7 +15606,7 @@ msgstr "¿Olvidaste tu contraseña?" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "¿Olvidaste tu contraseña?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Solo amigos y comunidades pequeñas" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Amigos de amigos" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "RGPD" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "General" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Alemania" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Obtener {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URL de los GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIFs" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Atajo global" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Volver" @@ -16374,6 +16374,11 @@ msgstr "Volver" msgid "Go back and enter a valid email." msgstr "Vuelve e ingresa un correo electrónico válido." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Regresa a {productName} para continuar." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Ocultar notas de vencimiento" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Ocultar favoritos" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Ocultar silenciados" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Ocultar canales silenciados" @@ -17358,7 +17363,7 @@ msgstr "Identidad" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inactivo" @@ -17818,7 +17823,7 @@ msgstr "Perfil inapropiado" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Bandeja de entrada" @@ -17867,7 +17872,7 @@ msgstr "Incluye el ID de la comunidad." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Vista previa de la página de invitación" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Invitar personas" @@ -18456,7 +18461,7 @@ msgstr "Invitó:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Invitaciones" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Unirse a la llamada" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Unirte a la comunidad" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Se unió a {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Ir a" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Expulsar a un miembro de esta comunidad." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Expulsar miembro" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Salir de la llamada" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Salir de la comunidad" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Creador de enlaces" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Enlace copiado al portapapeles" @@ -19859,8 +19864,8 @@ msgstr "Software malicioso o enlaces peligrosos" msgid "Malware, credential theft, or harmful files." msgstr "Malware, robo de credenciales o archivos dañinos." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Administrar" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Administrar cuentas" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Administra las aplicaciones y los dispositivos que tienen acceso a tu cuenta" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Marcar todos los canales no leídos de la bandeja de entrada como leídos inmediatamente, sin pedir confirmación" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Marcar como leído" @@ -20021,7 +20026,7 @@ msgstr "Marcar como spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Marcar como no leído" @@ -20169,7 +20174,7 @@ msgstr "Comunidad para adultos" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Contenido para adultos" @@ -20315,7 +20320,7 @@ msgstr "Midiendo…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "miembros" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Miembros" @@ -20616,7 +20621,7 @@ msgstr "¿Mencionar este rol?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Menciones" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Más acciones con archivos multimedia" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Más opciones" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Silenciar llamadas" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Silenciar categoría" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Silenciar comunidades" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Silenciar comunidad" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Silenciar sonido de entrada" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Silenciar favoritos" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "El nombre debe tener al menos 2 caracteres" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Nombrar llave de acceso" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formulario para nombrar la llave de acceso" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "¿Necesitas una cuenta?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Nunca" @@ -22276,7 +22281,7 @@ msgstr "Más recientes primero" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Siguiente" @@ -22905,7 +22910,7 @@ msgstr "No se encontraron usuarios" msgid "No verification is required." msgstr "No se requiere verificación." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "No hay métodos de verificación disponibles" @@ -23038,11 +23043,13 @@ msgstr "Página no encontrada" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Ahora no" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Nota (solo visible para ti)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Nada" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Configuración específica de notificaciones" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Configuración de notificaciones" @@ -23152,7 +23159,7 @@ msgstr "Volumen de notificaciones" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Desactivado" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Sin conexión" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Aceptar" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "en línea" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "En línea" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Solo los miembros con el permiso \"{manageCommunityPermissionLabel}\" pueden cambiar esto." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Solo menciones" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Abrir {labelText} en la configuración" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Abrir {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Mensajes directos abiertos" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Abrir chat" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Abrir factura {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Abrir enlace" @@ -23850,7 +23857,7 @@ msgstr "Abrir selector rápido" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Abrir configuración" @@ -23935,11 +23942,6 @@ msgstr "Abrir ventana flotante del estudio de temas" msgid "Open theme studio…" msgstr "Abrir estudio de temas…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Abre esta ventana desde {productName} para usar tu llave de acceso." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Opciones" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Llave de acceso" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Nombre de la llave de acceso" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Llave de acceso actualizada" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Llaves de acceso" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Las llaves de acceso requieren un paquete de macOS firmado con un identificador de aplicación válido. Instala el cliente de escritorio firmado y vuelve a intentarlo." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Contraseña" msgid "Password changed" msgstr "Contraseña cambiada" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Es posible que los administradores de contraseñas no ofrezcan tu llave de acceso en esta dirección web. Inténtalo en una ventana emergente en la dirección anterior." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Pega el enlace del mensaje." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Diccionario personal" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Notas personales" @@ -24885,7 +24887,7 @@ msgstr "Fijar MD de grupo" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Fijar mensaje" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "fijado" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "MD fijado" @@ -25020,7 +25022,7 @@ msgstr "Administrador de la plataforma" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Reproducir" @@ -25318,6 +25320,11 @@ msgstr "Presiona una tecla, un botón del mouse o un botón del gamepad para asi msgid "Press a shortcut…" msgstr "Presiona un atajo…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Presiona Continuar para usar tu llave de acceso." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Idioma principal" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Navegación principal" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Política de privacidad" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Configuración de privacidad" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Consejo:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Continuar" @@ -26090,7 +26097,7 @@ msgstr "Reaccionar con {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Regenerar invalidará el token actual. Actualiza cualquier código que use el valor anterior." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registrarse" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Llaves de acceso registradas" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Eliminar banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Quitar de guardados" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Eliminar del diccionario" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Quitar de favoritos" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Eliminado de los GIF favoritos" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Eliminado de favoritos" @@ -27032,7 +27039,7 @@ msgstr "Quitar los permisos podría limitar las funciones del bot." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Quitar el aislamiento temporal permitirá que <0>{targetUserTag} vuelva a enviar mensajes, reaccionar y unirse a canales de voz." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Renombrar" @@ -27119,7 +27126,7 @@ msgstr "Respuestas" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Responder" @@ -27209,7 +27216,7 @@ msgstr "Reportar un problema" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Reportar mensaje" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Requerir 2FA para acciones de moderación" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Requerir una llave de acceso como segundo factor" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Enlace para restablecer la contraseña no válido o caducado" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Restablecer el estado del acuerdo de contenido para adultos" @@ -27880,7 +27887,7 @@ msgstr "Búsqueda inversa de imagen" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Búsqueda inversa de imágenes" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Revisar y confirmar" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Revisa las aplicaciones que pueden acceder a tu cuenta." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Revisa compras anteriores y opciones de reembolso" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Revisa los dispositivos con sesión iniciada y cierra las sesiones que no reconozcas." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rol actualizado" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Roles" @@ -28261,7 +28268,7 @@ msgstr "Saturación" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Ámbito" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Ámbitos" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Lector de pantalla" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Buscar canales, personas o comunidades" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Buscar amigos" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Buscar el texto seleccionado" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Buscar configuración" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Buscar configuración…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Seguridad" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Funciones de seguridad" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Llave de seguridad" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Llave de seguridad / llave de acceso" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Contenido multimedia delicado" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Enviado" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Sesión" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "La sesión de {identifier} caducó. Inicia sesión de nuevo." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Establece el nivel de todos los efectos de sonido. Los sonidos con un volumen personalizado ignoran este ajuste." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Configuración abierta." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Secciones de configuración" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Barra lateral" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Iniciar sesión" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Inicia sesión para reclamar tu regalo" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Iniciar sesión con el navegador" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Iniciar sesión con una llave de acceso" @@ -30666,7 +30673,7 @@ msgstr "Inicia sesión con el proveedor de inicio de sesión único de tu organi #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Cerrar sesión" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Detalles de inicio de sesión" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Flujo de inicio de sesión" @@ -31189,7 +31196,7 @@ msgstr "No se pueden agregar algunos usuarios" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Algo salió mal" @@ -31374,7 +31381,7 @@ msgstr "Volumen del sonido" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Sonidos" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Comienza a subir los archivos adjuntos tan pronto como se agreguen al campo de entrada del mensaje" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Iniciar videollamada" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Iniciar llamada de voz" @@ -31899,7 +31906,7 @@ msgstr "sticker" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Sticker: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Stickers" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "¿Dejar de confiar en todos los enlaces?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "¿Dejar de usar llaves de acceso para la autenticación de dos factores?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Suprimir todas las menciones de rol" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Ocultar contenido incrustado" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "canal de texto" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Canal de texto" @@ -33055,7 +33062,7 @@ msgstr "Envíanos un mensaje de texto desde tu teléfono" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Síntesis de voz" @@ -33119,6 +33126,11 @@ msgstr "El proceso no se completó. Es posible que ya hayas salido de algunas co msgid "That did not go through. Nothing changed. Try again." msgstr "No se pudo completar. Nada cambió. Intenta de nuevo." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Eso no funcionó. Intenta de nuevo o cancela." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "No parece un color válido. Prueba con hexadecimal, rgb(), hsl() o un nombre de color CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Esa imagen no se pudo usar. Intenta con otro archivo." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Esa imagen no es válida. Prueba con otra." @@ -34035,11 +34047,11 @@ msgstr "Esta es la descripción de la segunda opción" msgid "This is the third option description" msgstr "Esta es la descripción de la tercera opción" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Esta es tu última llave de acceso y las llaves de acceso son tu segundo factor. Eliminarla desactivará la autenticación de dos factores en tu cuenta y tus códigos de respaldo actuales dejarán de funcionar." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Esta es tu última llave de acceso. Una vez que la elimines, no podrás usar una llave de acceso como segundo factor." @@ -34154,16 +34166,6 @@ msgstr "Este participante tiene el sonido desactivado" msgid "This participant was deafened by moderators" msgstr "Los moderadores desactivaron el sonido de este participante" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Esta solicitud de llave de acceso no se pudo verificar. Cierra esta ventana e inténtalo de nuevo." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Se agotó el tiempo de espera de esta solicitud de llave de acceso. Cierra esta ventana e inténtalo de nuevo." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Esto elimina todos los dominios de confianza. Volverás a ver la adverte msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Esto elimina todos los atajos personalizados y vuelve a habilitar todos los atajos integrados. Esto no se puede deshacer." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Esta solicitud ha expirado. Vuelve e inténtalo de nuevo." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Este enlace de restablecimiento ha expirado. Los enlaces de restablecimiento duran 1 hora. Por favor, solicita uno nuevo." @@ -34807,7 +34814,7 @@ msgstr "¿Transferir la propiedad del grupo a {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Transferir la propiedad" @@ -34823,7 +34830,7 @@ msgstr "Transferiste la propiedad a {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Traducir" @@ -34980,7 +34987,7 @@ msgstr "Prueba con otro nombre de variable o borra la búsqueda." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Reintentar" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Reintentar" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Intenta de nuevo en un momento." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Prueba buscando algo como \"tema\", \"notificaciones\" o \"privacidad\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Prueba con una llave de seguridad o llave de acceso" @@ -35088,7 +35095,7 @@ msgstr "Turco" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Desactivar" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Desactiva el audio compartido para esta fuente o inténtalo de nuevo en un momento." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Apagar cámara" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Desactiva la privacidad de la transmisión antes de ver los detalles de inicio de sesión o de seguridad de la cuenta." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Activar" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Dos factores" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Autenticación de dos factores" @@ -35288,7 +35295,7 @@ msgstr "Autenticación de dos factores desactivada" msgid "Two-factor authentication enabled" msgstr "Autenticación de dos factores activada" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Autenticación de dos factores activada" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Desbloquear usuario" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Sin categoría" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Subrayar enlaces a sitios web" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Entendido" @@ -35643,7 +35650,7 @@ msgstr "Alternativa universal. La calidad más baja, pero funciona en todas part #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Activar el micrófono en todos los dispositivos" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Quitar silencio a la categoría" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Quitar silencio a las comunidades" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Quitar silencio a la comunidad" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Quitar silencio a los MD" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Quitar silencio a los favoritos" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Desfijar" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Desfijar mensaje" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "¿Desfijar este mensaje?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "MD desfijado" @@ -36193,6 +36200,11 @@ msgstr "Actualizar correo electrónico" msgid "Update my status" msgstr "Actualizar mi estado" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Actualizar llave de acceso" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Actualizar aislamiento temporal" msgid "Update your own nickname." msgstr "Actualiza tu propio apodo." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Actualiza tu llave de acceso" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Usa una ventana específica para establecer una fecha de corte del histo msgid "Use a different email address and verify it with a code." msgstr "Usa una dirección de correo electrónico diferente y verifícala con un código." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Usar una llave de acceso del administrador de contraseñas" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Usar valor real" msgid "Use alternative method" msgstr "Usar otro método" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Usa una aplicación de autenticación para generar códigos de autenticación de dos factores" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Usa esta opción solo si infringe claramente las reglas de {productName} y no encaja en las categorías anteriores." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "¿Usar llaves de acceso para la autenticación de dos factores?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Usa llaves de acceso para iniciar sesión sin contraseña" @@ -36824,8 +36836,8 @@ msgstr "Usar actividad de voz" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Usa el corrector ortográfico de tu sistema operativo cuando esté disponible. De lo contrario, usa los diccionarios integrados de {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Usa tu llave de acceso" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Controles de usuario" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Depurar usuario" @@ -36972,7 +36984,7 @@ msgstr "Volumen del usuario" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verificación cancelada" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Código de verificación" @@ -37185,7 +37197,7 @@ msgstr "Correo electrónico de verificación enviado. Revisa tu bandeja de entra msgid "Verification expired" msgstr "Verificación caducada" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Comunidad verificada" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verificar" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Verificar conexión" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Verificar correo electrónico" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formulario de verificación de identidad" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Verifica que eres tú" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Verifica tu dirección de correo electrónico para enviar solicitudes de amistad." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Verifica tu correo electrónico antes de agregar una llave de acceso." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Verifica tu correo electrónico antes de agregar una aplicación de autenticación." @@ -37571,7 +37583,7 @@ msgstr "Ver y administrar usuarios baneados." msgid "View and manage every webhook configured across your community." msgstr "Ve y administra cada webhook configurado en tu comunidad." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Ver y administrar tus códigos de respaldo para recuperar la cuenta" @@ -37605,7 +37617,7 @@ msgstr "Ver canal" msgid "View channel members" msgstr "Ver miembros del canal" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Ver códigos" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Ver planes" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Ver perfil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "canal de voz" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Canal de voz" @@ -38073,7 +38085,7 @@ msgstr "Anulada" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Espera aquí" msgid "Waiting for connection..." msgstr "Esperando conexión..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Esperando la llave de acceso…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Ver" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Ver transmisión" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Vistas previas de sitios web" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Te damos la bienvenida de nuevo" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "No estás en ninguna comunidad en este momento." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Bloqueaste a {userName}. No podrás enviarle mensajes a menos que lo desbloquees." @@ -39101,6 +39113,11 @@ msgstr "Puedes cancelar el proceso de eliminación en un plazo de 14 días" msgid "You can close this modal. The import will continue in the background." msgstr "Puedes cerrar esta ventana. La importación continuará en segundo plano." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Puedes cerrar esta pestaña" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Ya puedes cerrar esta pestaña y volver a la app." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "No puedes enviarte una solicitud de amistad a ti mismo." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "No puedes enviar mensajes en este canal." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Aún necesitarás completar el paso del correo electrónico." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Ya no se te pedirá una llave de acceso después de tu contraseña. Tu app de autenticación seguirá siendo tu segundo factor." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Tendrás que volver a iniciar sesión en todos los dispositivos donde la cerraste" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Necesitarás una de tus llaves de acceso para iniciar sesión en un dispositivo nuevo. Si pierdes todas tus llaves de acceso, podrías quedarte sin acceso a tu cuenta. Guardaremos códigos de respaldo para ti, así tendrás una forma de entrar." @@ -39918,12 +39935,12 @@ msgstr "Tu cuenta es demasiado nueva para enviar mensajes en esta comunidad." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Tu solicitud de cuenta está pendiente de aprobación. Podrás iniciar sesión cuando un administrador la apruebe." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Tu cuenta requiere autenticación multifactor, pero no hay métodos compatibles configurados en este dispositivo. Inicia sesión en un dispositivo con tu aplicación de autenticación o llave de seguridad, o contacta a soporte." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Tu cuenta ya no estará protegida por autenticación de dos factores al iniciar sesión con tu contraseña. También perderás los permisos elevados en servidores que requieren autenticación de dos factores." @@ -39941,16 +39958,6 @@ msgstr "No pudimos completar tu acción porque fue marcada por nuestros sistemas msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Tu solicitud está pendiente de revisión. Aún puedes actualizar los datos de tu comunidad o retirar la solicitud." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Tu navegador bloqueó la ventana emergente de la llave de acceso. Permite las ventanas emergentes para este sitio e inténtalo de nuevo." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Tu navegador no admite claves de acceso en este dominio. Actualiza tu navegador o inicia sesión con tu contraseña y código de dos factores." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Tu comunidad necesita al menos {minMemberCount, plural, one {# miembro} msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Se ha comprobado tu tarjeta de crédito. Si la tarjeta es válida, el contenido para adultos se desbloqueará en breve. Puedes cerrar esta pestaña y volver a la aplicación." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Tu dispositivo te pedirá que guardes una llave de acceso actualizada para {name}. Reemplazará la anterior." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Tu dispositivo te pedirá que guardes una llave de acceso actualizada para {name}. Usa el mismo teléfono o llave de seguridad que acabas de usar." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Acercar" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/es-ES/messages.po b/fluxer_app/src/features/i18n/locales/es-ES/messages.po index b1b44b9ec..f95fe96ec 100644 --- a/fluxer_app/src/features/i18n/locales/es-ES/messages.po +++ b/fluxer_app/src/features/i18n/locales/es-ES/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {miembro} other {miembros}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# mención} many {# menciones} other {# menciones}}" @@ -2370,8 +2370,8 @@ msgstr "6 meses" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "Código de 6 dígitos" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Estados forzados de cuenta y premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Acceso a la cuenta" @@ -2807,7 +2807,7 @@ msgstr "Suscriptor mensual activo (cancelación programada)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Añade una cuenta para continuar." msgid "Add an email and password to your account first." msgstr "Añade primero un correo electrónico y una contraseña a tu cuenta." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Añade una capa extra de seguridad a tu cuenta" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Añadir bot a un destino" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Añadir canal" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Añade nuevas reacciones a los mensajes." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Añadir nota" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Añadir permisos específicos" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Añadir clave de acceso" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Añadir reacción" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Añadir al diccionario" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Añadir a favoritos" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Añadido a los GIF favoritos" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Añadido a favoritos" @@ -3296,11 +3296,11 @@ msgstr "Añadido a favoritos" msgid "Added to saved media" msgstr "Añadido a contenido multimedia guardado" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Añadido: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Añadido: {createdDate} • Últ. uso: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Todos los idiomas" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Todos los mensajes" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Ya eliminado" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "¿Ya tienes una cuenta?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Zoom de la aplicación" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Nivel de zoom de la aplicación" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Aprobar" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Aprueba esta app desde la app {productName} que ya usas. No necesitas contraseña." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "¿Seguro que quieres eliminar la categoría \"{categoryName}\"? Esta acción no se puede deshacer." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "¿Seguro que quieres eliminar la clave de acceso <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "¿Seguro que quieres eliminar este archivo adjunto? Esta acción no se p msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "¿Seguro que quieres eliminar esta comunidad? Esta acción no se puede deshacer. Todos los canales, mensajes y ajustes se eliminarán permanentemente." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "¿Seguro que quieres eliminar esta clave de acceso?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Preguntar antes de iniciar llamadas" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Solicitar una clave de acceso después de tu contraseña al iniciar sesión" @@ -4690,7 +4690,7 @@ msgstr "Archivos adjuntos" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Audio" @@ -4851,14 +4851,14 @@ msgstr "Autenticación" msgid "Authenticator" msgstr "Autenticador" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Aplicación de autenticación" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Código de autenticación" @@ -4928,7 +4928,7 @@ msgstr "Aplicaciones autorizadas" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Ausente ahora mismo" msgid "Back" msgstr "Atrás" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Volver a {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Volver a los roles" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Volver a ajustes" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Volver a iniciar sesión" @@ -5342,8 +5347,8 @@ msgstr "Retroceso" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Código de respaldo" @@ -5351,7 +5356,7 @@ msgstr "Código de respaldo" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Límite de mensajes guardados alcanzado" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Llamadas" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Cámara apagada" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Cámara activada" @@ -6364,9 +6369,9 @@ msgstr "No se pueden subir archivos aquí" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "No se pueden subir archivos aquí" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Cambiar emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Cambiar apodo de amigo" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Cambiar mi apodo en el grupo" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Cambiar apodo" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Acciones del canal" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Canal añadido a favoritos" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Canal creado" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Depuración del canal" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Canal eliminado" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Registro del canal" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Canal eliminado de favoritos" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Elige el color de énfasis de tu perfil" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Completar el registro" @@ -7715,7 +7720,7 @@ msgstr "Completa el registro de tu cuenta y verifica tu correo electrónico para msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Completa el registro de tu cuenta añadiendo un correo electrónico y una contraseña. Te enviaremos un código de verificación para confirmar tu correo antes de finalizar." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Completa el registro de tu cuenta para acceder a funciones de seguridad como la autenticación de dos factores y las claves de acceso." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "¿Borrar CSS rápido?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Borrar búsqueda" @@ -8103,7 +8108,7 @@ msgstr "Clonar está desactivado" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Cerrar" @@ -8160,11 +8165,9 @@ msgstr "Mantener en la barra de menús al cerrar" msgid "Close to tray" msgstr "Mantener en la bandeja al cerrar" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Cerrar ventana" @@ -8456,7 +8459,7 @@ msgstr "Comunicación" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Depuración de comunidad" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Predeterminado de la comunidad" @@ -8577,7 +8580,7 @@ msgstr "Registro de miembro de la comunidad" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Miembros de la comunidad" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Nivel de notificación de la comunidad" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Ajustes de notificaciones de la comunidad" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Comparación" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Completar verificación de contenido para adultos" @@ -9093,7 +9096,7 @@ msgstr "Conexión: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Los menús contextuales se pueden abrir con un clic izquierdo (en botone #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Continuar" msgid "Continue to checkout" msgstr "Continuar con el pago" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Continuar para crear una clave de acceso para {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Continuar para denunciar a la comunidad" msgid "Continue to report user" msgstr "Continuar para denunciar al usuario" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Continuar con clave de acceso" @@ -9238,11 +9238,6 @@ msgstr "Continuar con clave de acceso" msgid "Continue with SSO" msgstr "Continuar con SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Continuar con tu clave de acceso para iniciar sesión en {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Coordina ataques, acoso organizado o acoso contra personas o comunidades #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Copiado" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Copiar ID de la categoría" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Copiar ID del canal" @@ -9421,12 +9416,12 @@ msgstr "Copiar enlace del canal" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Copiar código" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Copiar ID de la comunidad" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Copiar enlace de invitación" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Copiar mensaje" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Copiar ID de mensaje" @@ -9570,7 +9565,7 @@ msgstr "Copiar ID de mensaje" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Copiar URL de la pegatina" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Copia la clave de configuración en tu aplicación de autenticación." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Copiar ID de usuario" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Copiar nombre de usuario" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "No se pudo eliminar la aplicación" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "No se pudo eliminar la clave de acceso" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "No se pudo enviar la invitación" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "No se pudo enviar la invitación. Inténtalo de nuevo." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "No se pudo actualizar la omisión de supresión de menciones" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "No se pudo actualizar la autenticación de dos factores con clave de acceso" @@ -10206,6 +10201,11 @@ msgstr "No se ha podido actualizar el texto alternativo. Inténtalo de nuevo." msgid "Couldn't update voice activity sharing right now" msgstr "No se ha podido actualizar la opción de compartir actividad de voz ahora mismo" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "No se ha podido actualizar tu clave de acceso. Inténtalo de nuevo." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "No se pudo subir el avatar" msgid "Couldn't upload banner" msgstr "No se pudo subir el banner" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "No se ha podido usar tu clave de acceso en la ventana emergente. Inténtalo de nuevo." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "No se ha podido verificar el código. Inténtalo de nuevo." msgid "Couldn't verify the connection" msgstr "No se pudo verificar la conexión" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "No se ha podido verificar con la clave de acceso. Inténtalo de nuevo." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Acogedor" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Crear" @@ -10298,7 +10293,7 @@ msgstr "Crear un grupo nuevo con {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Crear aplicación" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Crear categoría" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Crear canal" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Crear comunidad" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Texto de advertencia personalizado" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Personalizar…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Depurar" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Depurar canal" @@ -11164,7 +11159,7 @@ msgstr "Depurar mensaje" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Depurar usuario" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Eliminar {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Eliminar cuenta" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Eliminar aplicación" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Eliminar archivo adjunto" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Eliminar contenido multimedia" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Eliminar mensaje" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Eliminar mensajes de otros miembros. La fijación se controla por separado." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Eliminar clave de acceso" @@ -11701,7 +11696,7 @@ msgstr "Describe de qué trata tu comunidad" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Descripción" @@ -11966,7 +11961,7 @@ msgstr "Dispositivo:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Entrada directa" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Mensaje directo" @@ -12050,7 +12045,7 @@ msgstr "Previsualizaciones de mensajes directos" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Mensajes directos" @@ -12077,14 +12072,14 @@ msgstr "Subida directa activa" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Desactivar" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Desactivar cuenta" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Desconectado" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Comunidad que aparece en Descubrir" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Discriminador" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Descartar" @@ -12477,7 +12472,7 @@ msgstr "Ajustes de MD y solicitudes de amistad" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "MD cerrado" @@ -12607,7 +12602,7 @@ msgstr "No bloquea. Puedes volver a abrirlo más tarde." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Dominio" @@ -12697,7 +12692,7 @@ msgstr "Haz doble clic en alguien para ver su transmisión." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Neerlandés" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "p. ej., YubiKey, iPhone, ordenador del trabajo" @@ -13092,7 +13087,7 @@ msgstr "Edita los ajustes globales, como el nombre, la descripción y el icono." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Editar grupo" @@ -13123,7 +13118,7 @@ msgstr "Editar contenido multimedia" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Editar mensaje" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Puedes solicitar un reembolso hasta el {windowEndsOn}. Esto también cancelará tu suscripción de inmediato." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Correo electrónico" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji actualizado" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojis" @@ -13525,7 +13520,7 @@ msgstr "Favoritos vacíos" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Habilitar" @@ -13680,7 +13675,7 @@ msgstr "Activar notificaciones push en el móvil" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Activar notificaciones" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Activa las integraciones cuyas credenciales hayas configurado. Solo se muestran los servicios disponibles." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Activar la autenticación de dos factores" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Inglés (EE. UU.)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Mejorado" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Introduce el nuevo correo electrónico" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Introduce uno de tus códigos de respaldo si no puedes usar tu clave de acceso." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Introduce uno de tus códigos de respaldo." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Introduce texto" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Introduce el código de {digitCount} dígitos de tu aplicación de autenticación o un código de respaldo." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Introduce el código antes de continuar." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Introduce el código de tu aplicación de autenticación." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Introduce tu nombre" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Introduce tu contraseña." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Caducó el <0>{expiredDate}. Las <1/> ya no están activas. Puedes volver a suscribirte en cualquier momento." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Caduca" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Autocompletar expresiones" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Categorías del selector de expresiones" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "No se han podido preparar los emojis" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "No se ha podido procesar la imagen recortada. Inténtalo de nuevo." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "No se pudo iniciar la autenticación con SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "No se pudo cambiar de cuenta" @@ -15053,7 +15048,7 @@ msgstr "Favoritos" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favoritos" @@ -15268,6 +15263,11 @@ msgstr "Completar el registro de la cuenta" msgid "Finish account setup first" msgstr "Completa primero el registro de tu cuenta" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Termina en la pestaña nueva. Si la has cerrado, vuelve a pulsar Continuar con clave de acceso." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Nombre de la carpeta" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Ajustes de la carpeta" @@ -15479,7 +15479,7 @@ msgstr "Para mí" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Para esta verificación, nos envías un mensaje de texto en lugar de recibir uno nuestro." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Para tu seguridad, confirma que eres tú para continuar." @@ -15606,7 +15606,7 @@ msgstr "¿Has olvidado la contraseña?" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "¿Has olvidado tu contraseña?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Solo amigos y comunidades pequeñas" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Amigos de amigos" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "RGPD" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "General" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Alemania" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Obtener {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URL de los GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Atajo global" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Volver" @@ -16374,6 +16374,11 @@ msgstr "Volver" msgid "Go back and enter a valid email." msgstr "Vuelve e introduce un correo electrónico válido." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Vuelve a {productName} para continuar." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Ocultar notas a pie de página de caducidad" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Ocultar favoritos" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Ocultar silenciados" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Ocultar canales silenciados" @@ -17358,7 +17363,7 @@ msgstr "Identidad" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inactivo" @@ -17818,7 +17823,7 @@ msgstr "Perfil inapropiado" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Bandeja de entrada" @@ -17867,7 +17872,7 @@ msgstr "Incluye el ID de la comunidad." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Previsualización de la página de invitación" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Invitar a gente" @@ -18456,7 +18461,7 @@ msgstr "Invitó:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Invitaciones" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Unirse a la llamada" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Unirse a la comunidad" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Se unió a {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Ir" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Expulsar a un miembro de esta comunidad." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Expulsar miembro" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Salir de la llamada" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Salir de la comunidad" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Creador de enlaces" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Enlace copiado al portapapeles" @@ -19859,8 +19864,8 @@ msgstr "Malware o enlaces peligrosos" msgid "Malware, credential theft, or harmful files." msgstr "Malware, robo de credenciales o archivos dañinos." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Gestionar" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Gestionar cuentas" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Gestiona las aplicaciones y los dispositivos que tienen acceso a tu cuenta" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Marcar todos los canales no leídos de la bandeja de entrada como leídos inmediatamente, sin pedir confirmación" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Marcar como leído" @@ -20021,7 +20026,7 @@ msgstr "Marcar como spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Marcar como no leído" @@ -20169,7 +20174,7 @@ msgstr "Comunidad para adultos" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Contenido para adultos" @@ -20315,7 +20320,7 @@ msgstr "Midiendo…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "miembros" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Miembros" @@ -20616,7 +20621,7 @@ msgstr "¿Mencionar este rol?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Menciones" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Más acciones con archivos multimedia" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Más opciones" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Silenciar llamadas" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Silenciar categoría" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Silenciar comunidades" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Silenciar comunidad" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Silenciar sonido de entrada" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Silenciar favoritos" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "El nombre debe tener al menos 2 caracteres" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Nombrar clave de acceso" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formulario para nombrar la clave de acceso" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "¿Necesitas una cuenta?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Nunca" @@ -22276,7 +22281,7 @@ msgstr "Más recientes primero" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Siguiente" @@ -22905,7 +22910,7 @@ msgstr "No se encontraron usuarios" msgid "No verification is required." msgstr "No se requiere verificación." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "No hay métodos de verificación disponibles" @@ -23038,11 +23043,13 @@ msgstr "Página no encontrada" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Ahora no" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Nota (solo visible para ti)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Nada" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Ajustes específicos de notificaciones" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Ajustes de notificaciones" @@ -23152,7 +23159,7 @@ msgstr "Volumen de notificaciones" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Desactivado" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Sin conexión" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Aceptar" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "en línea" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "En línea" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Solo los miembros con el permiso \"{manageCommunityPermissionLabel}\" pueden cambiar esto." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Solo menciones" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Abrir {labelText} en los ajustes" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Abrir {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Mensajes directos abiertos" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Abrir MD" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Abrir factura {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Abrir enlace" @@ -23850,7 +23857,7 @@ msgstr "Abrir selector rápido" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Abrir ajustes" @@ -23935,11 +23942,6 @@ msgstr "Abrir ventana flotante del estudio de temas" msgid "Open theme studio…" msgstr "Abrir estudio de temas…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Abre esta ventana desde {productName} para usar tu clave de acceso." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Opciones" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Clave de acceso" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Nombre de la clave de acceso" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Clave de acceso actualizada" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Claves de acceso" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Las claves de acceso requieren un paquete de macOS firmado con un identificador de aplicación válido. Instala el cliente de escritorio firmado y vuelve a intentarlo." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Contraseña" msgid "Password changed" msgstr "Contraseña cambiada" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Es posible que los gestores de contraseñas no ofrezcan tu clave de acceso en esta dirección web. Inténtalo en una ventana emergente en la dirección antigua." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Pega el enlace del mensaje." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Diccionario personal" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Notas personales" @@ -24885,7 +24887,7 @@ msgstr "Fijar MD de grupo" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Fijar mensaje" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "fijado" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "MD fijado" @@ -25020,7 +25022,7 @@ msgstr "Administrador de la plataforma" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Reproducir" @@ -25318,6 +25320,11 @@ msgstr "Pulsa una tecla, un botón del ratón o un botón del mando para asignar msgid "Press a shortcut…" msgstr "Pulsa un atajo…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Pulsa Continuar para usar tu clave de acceso." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Idioma principal" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Navegación principal" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Política de privacidad" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Ajustes de privacidad" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Consejo:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Continuar" @@ -26090,7 +26097,7 @@ msgstr "Reaccionar con {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Regenerar invalidará el token actual. Actualiza cualquier código que use el valor antiguo." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registrarse" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Claves de acceso registradas" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Eliminar banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Quitar de guardados" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Eliminar del diccionario" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Eliminar de favoritos" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Eliminado de los GIF favoritos" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Eliminado de favoritos" @@ -27032,7 +27039,7 @@ msgstr "Eliminar los permisos podría limitar las funciones del bot." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Quitar el aislamiento temporal permitirá que <0>{targetUserTag} vuelva a enviar mensajes, reaccionar y unirse a canales de voz." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Renombrar" @@ -27119,7 +27126,7 @@ msgstr "Respuestas" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Responder" @@ -27209,7 +27216,7 @@ msgstr "Reportar un problema" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Denunciar mensaje" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Requerir 2FA para acciones de moderación" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Requerir una clave de acceso como segundo factor" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Enlace de restablecimiento no válido o caducado" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Restablecer el estado del acuerdo de contenido para adultos" @@ -27880,7 +27887,7 @@ msgstr "Búsqueda inversa de imagen" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Búsqueda inversa de imágenes" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Revisa y confirma" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Revisa las aplicaciones que pueden acceder a tu cuenta." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Revisa tus compras anteriores y opciones de reembolso" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Revisa los dispositivos con sesión iniciada y cierra las sesiones que no reconozcas." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rol actualizado" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Roles" @@ -28261,7 +28268,7 @@ msgstr "Saturación" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Ámbito" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Ámbitos" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Lector de pantalla" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Buscar canales, personas o comunidades" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Buscar amigos" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Buscar texto seleccionado" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Buscar ajustes" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Buscar ajustes…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Seguridad" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Funciones de seguridad" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Llave de seguridad" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Llave de seguridad / clave de acceso" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Contenido multimedia sensible" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Enviado" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Sesión" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "La sesión de {identifier} ha caducado. Inicia sesión de nuevo." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Establece el nivel de todos los efectos de sonido. Los sonidos con un volumen personalizado ignoran este ajuste." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Ajustes abiertos." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Secciones de ajustes" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Barra lateral" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Iniciar sesión" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Inicia sesión para reclamar tu regalo" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Iniciar sesión a través del navegador" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Iniciar sesión con una clave de acceso" @@ -30666,7 +30673,7 @@ msgstr "Inicia sesión con el proveedor de inicio de sesión único de tu organi #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Cerrar sesión" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Detalles de inicio de sesión" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Flujo de inicio de sesión" @@ -31189,7 +31196,7 @@ msgstr "No se pueden añadir algunos usuarios" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Algo salió mal" @@ -31374,7 +31381,7 @@ msgstr "Volumen del sonido" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Sonidos" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Comienza a subir los archivos adjuntos tan pronto como se añadan al campo de entrada del mensaje" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Iniciar videollamada" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Iniciar llamada de voz" @@ -31899,7 +31906,7 @@ msgstr "pegatina" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Pegatina: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Pegatinas" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "¿Dejar de confiar en todos los enlaces?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "¿Dejar de usar claves de acceso para la autenticación de dos factores?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Suprimir todas las menciones de rol" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Ocultar contenido incrustado" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "canal de texto" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Canal de texto" @@ -33055,7 +33062,7 @@ msgstr "Envíanos un mensaje desde tu teléfono" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Síntesis de voz" @@ -33119,6 +33126,11 @@ msgstr "El proceso no se ha completado. Es posible que ya hayas salido de alguna msgid "That did not go through. Nothing changed. Try again." msgstr "No se ha podido completar. Nada ha cambiado. Inténtalo de nuevo." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "No ha funcionado. Inténtalo de nuevo o cancela." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "No parece un color válido. Prueba con un código hexadecimal, rgb(), hsl() o un nombre de color CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Esa imagen no se ha podido usar. Prueba con otro archivo." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Esa imagen no es válida. Prueba con otra." @@ -34035,11 +34047,11 @@ msgstr "Esta es la descripción de la segunda opción" msgid "This is the third option description" msgstr "Esta es la descripción de la tercera opción" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Esta es tu última clave de acceso y las claves de acceso son tu segundo factor. Si la eliminas, se desactivará la autenticación de dos factores de tu cuenta y tus códigos de respaldo actuales dejarán de funcionar." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Esta es tu última clave de acceso. Una vez que la elimines, no podrás usar una clave de acceso como segundo factor." @@ -34154,16 +34166,6 @@ msgstr "Este participante tiene el sonido desactivado" msgid "This participant was deafened by moderators" msgstr "Los moderadores desactivaron el sonido de este participante" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "No se ha podido verificar esta solicitud de clave de acceso. Cierra esta ventana y vuelve a intentarlo." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Se ha agotado el tiempo de espera de esta solicitud de clave de acceso. Cierra esta ventana y vuelve a intentarlo." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Esto elimina todos los dominios de confianza. Volverás a ver la adverte msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Esto elimina todos los atajos personalizados y vuelve a habilitar los atajos integrados. Esta acción no se puede deshacer." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Esta solicitud ha caducado. Vuelve atrás e inténtalo de nuevo." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Este enlace de restablecimiento ha caducado. Los enlaces de restablecimiento duran 1 hora. Por favor, solicita uno nuevo." @@ -34807,7 +34814,7 @@ msgstr "¿Transferir la propiedad del grupo a {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Transferir la propiedad" @@ -34823,7 +34830,7 @@ msgstr "Propiedad transferida a {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Traducir" @@ -34980,7 +34987,7 @@ msgstr "Prueba con otro nombre de variable o borra la búsqueda." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Volver a intentar" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Volver a intentar" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Inténtalo de nuevo en un momento." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Prueba a buscar algo como \"tema\", \"notificaciones\" o \"privacidad\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Probar con una llave de seguridad o clave de acceso" @@ -35088,7 +35095,7 @@ msgstr "Turco" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Desactivar" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Desactiva el uso compartido de audio para esta fuente o inténtalo de nuevo en un momento." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Apagar cámara" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Desactiva la privacidad de la transmisión antes de ver los detalles de inicio de sesión o de seguridad de la cuenta." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Activar" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Dos factores" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Autenticación de dos factores" @@ -35288,7 +35295,7 @@ msgstr "Autenticación de dos factores desactivada" msgid "Two-factor authentication enabled" msgstr "Autenticación de dos factores activada" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Autenticación de dos factores activada" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Desbloquear usuario" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Sin categoría" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Subrayar enlaces a sitios web" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Entendido" @@ -35643,7 +35650,7 @@ msgstr "Alternativa universal. La calidad más baja, pero funciona en todas part #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Activar el micrófono en todos los dispositivos" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Quitar silencio a la categoría" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Quitar silencio a las comunidades" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Quitar silencio a la comunidad" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Quitar silencio a los MD" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Quitar silencio a los favoritos" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Desfijar" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Desfijar mensaje" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "¿Desfijar este mensaje?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "MD desfijado" @@ -36193,6 +36200,11 @@ msgstr "Actualizar correo electrónico" msgid "Update my status" msgstr "Actualizar mi estado" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Actualizar clave de acceso" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Actualizar aislamiento temporal" msgid "Update your own nickname." msgstr "Actualiza tu propio apodo." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Actualiza tu clave de acceso" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Usa una ventana específica para establecer una fecha de corte del histo msgid "Use a different email address and verify it with a code." msgstr "Usa una dirección de correo electrónico diferente y verifícala con un código." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Usar una clave de acceso del gestor de contraseñas" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Usar valor real" msgid "Use alternative method" msgstr "Usar método alternativo" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Usa una aplicación de autenticación para generar códigos de autenticación de dos factores" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Úsalo solo si infringe claramente las reglas de {productName} y no encaja en las opciones anteriores." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "¿Usar claves de acceso para la autenticación de dos factores?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Usa claves de acceso para iniciar sesión sin contraseña" @@ -36824,8 +36836,8 @@ msgstr "Usar actividad de voz" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Usa el corrector ortográfico de tu sistema operativo cuando esté disponible. Si no, usa los diccionarios integrados de {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Usa tu clave de acceso" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Controles de usuario" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Depurar usuario" @@ -36972,7 +36984,7 @@ msgstr "Volumen del usuario" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verificación cancelada" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Código de verificación" @@ -37185,7 +37197,7 @@ msgstr "Correo electrónico de verificación enviado. Revisa tu bandeja de entra msgid "Verification expired" msgstr "Verificación caducada" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Comunidad verificada" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verificar" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Verificar conexión" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Verificar correo electrónico" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formulario de verificación de identidad" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Verifica que eres tú" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Verifica tu dirección de correo electrónico para enviar solicitudes de amistad." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Verifica tu correo electrónico antes de añadir una clave de acceso." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Verifica tu correo electrónico antes de añadir una aplicación de autenticación." @@ -37571,7 +37583,7 @@ msgstr "Ver y gestionar usuarios baneados." msgid "View and manage every webhook configured across your community." msgstr "Consulta y gestiona todos los webhooks configurados en tu comunidad." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Ver y gestionar tus códigos de respaldo para recuperar la cuenta" @@ -37605,7 +37617,7 @@ msgstr "Ver canal" msgid "View channel members" msgstr "Ver miembros del canal" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Ver códigos" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Ver planes" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Ver perfil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "canal de voz" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Canal de voz" @@ -38073,7 +38085,7 @@ msgstr "Anulada" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Espera aquí" msgid "Waiting for connection..." msgstr "Esperando conexión..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Esperando la clave de acceso…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Ver" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Ver transmisión" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Vistas previas de sitios web" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Te damos la bienvenida de nuevo" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "No estás en ninguna comunidad ahora mismo." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Has bloqueado a {userName}. No podrás enviarle mensajes a menos que lo desbloquees." @@ -39101,6 +39113,11 @@ msgstr "Puedes cancelar el proceso de eliminación en un plazo de 14 días" msgid "You can close this modal. The import will continue in the background." msgstr "Puedes cerrar esta ventana. La importación continuará en segundo plano." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Puedes cerrar esta pestaña" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Ya puedes cerrar esta pestaña y volver a la aplicación." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "No puedes enviarte una solicitud de amistad a ti mismo." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "No puedes enviar mensajes en este canal." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Todavía tendrás que completar el paso del correo electrónico." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Ya no se te pedirá una clave de acceso después de la contraseña. Tu aplicación de autenticación seguirá siendo tu segundo factor." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Tendrás que volver a iniciar sesión en todos los dispositivos en los que la hayas cerrado" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Necesitarás una de tus claves de acceso para iniciar sesión en un nuevo dispositivo. Si pierdes todas tus claves de acceso, podrías quedarte sin acceso a tu cuenta. Guardaremos códigos de respaldo para que sigas teniendo una forma de entrar." @@ -39918,12 +39935,12 @@ msgstr "Tu cuenta es demasiado nueva para enviar mensajes en esta comunidad." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Tu solicitud de cuenta está pendiente de aprobación. Podrás iniciar sesión cuando un administrador la apruebe." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Tu cuenta requiere autenticación multifactor, pero no hay métodos compatibles configurados en este dispositivo. Inicia sesión en un dispositivo con tu aplicación de autenticación o llave de seguridad, o contacta con soporte." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Tu cuenta ya no estará protegida por la autenticación de dos factores al iniciar sesión con tu contraseña. También perderás los permisos elevados en las comunidades que requieren autenticación de dos factores." @@ -39941,16 +39958,6 @@ msgstr "No se ha podido completar tu acción porque ha sido marcada por nuestros msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Tu solicitud está pendiente de revisión. Aún puedes actualizar los datos de tu comunidad o retirar la solicitud." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Tu navegador ha bloqueado la ventana emergente de la clave de acceso. Permite las ventanas emergentes para este sitio e inténtalo de nuevo." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Tu navegador no admite claves de acceso en este dominio. Actualiza tu navegador o inicia sesión con tu contraseña y código de dos factores." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Tu comunidad necesita al menos {minMemberCount, plural, one {# miembro} msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Se ha comprobado tu tarjeta de crédito. Si la tarjeta es válida, el contenido para adultos se desbloqueará en breve. Puedes cerrar esta pestaña y volver a la aplicación." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Tu dispositivo te pedirá que guardes una clave de acceso actualizada para {name}. Sustituirá a la anterior." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Tu dispositivo te pedirá que guardes una clave de acceso actualizada para {name}. Usa el mismo teléfono o llave de seguridad que acabas de utilizar." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Acercar" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/fi/messages.po b/fluxer_app/src/features/i18n/locales/fi/messages.po index 2f67e5cf3..6c8cd203d 100644 --- a/fluxer_app/src/features/i18n/locales/fi/messages.po +++ b/fluxer_app/src/features/i18n/locales/fi/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {jäsen} other {jäsentä}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# maininta} other {# mainintaa}}" @@ -2370,8 +2370,8 @@ msgstr "6 kuukautta" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-numeroinen koodi" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Tili ja premium-ohitukset" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Tilin käyttöoikeudet" @@ -2807,7 +2807,7 @@ msgstr "Aktiivinen kuukausitilaaja (peruutus ajoitettu)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Lisää tili jatkaaksesi." msgid "Add an email and password to your account first." msgstr "Lisää ensin sähköpostiosoite ja salasana tilillesi." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Lisää tilillesi ylimääräinen suojauskerros" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Lisää botti kohteeseen" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Lisää kanava" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Lisää uusia reaktioita viesteihin." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Lisää muistiinpano" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Lisää ohitus" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Lisää pääsyavain" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Lisää reaktio" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Lisää sanakirjaan" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Lisää suosikkeihin" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Lisätty suosikki-GIFeihin" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Lisätty suosikkeihin" @@ -3296,11 +3296,11 @@ msgstr "Lisätty suosikkeihin" msgid "Added to saved media" msgstr "Lisätty tallennettuun mediaan" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Lisätty: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Lisätty: {createdDate} • viimeksi käytetty: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Kaikki kielet" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Kaikki viestit" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Jo poistettu" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Onko sinulla jo tili?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Sovelluksen zoomaus" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Sovelluksen zoomaustaso" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Hyväksy" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Hyväksy tämä sovellus jo käyttämästäsi {productName}-sovelluksesta. Salasanaa ei tarvita." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Haluatko varmasti poistaa kategorian \"{categoryName}\"? Tätä toimintoa ei voi kumota." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Haluatko varmasti poistaa pääsyavaimen <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Haluatko varmasti poistaa tämän liitteen? Toimintoa ei voi kumota, ja msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Haluatko varmasti poistaa tämän yhteisön? Tätä toimintoa ei voi kumota. Kaikki kanavat, viestit ja asetukset poistetaan pysyvästi." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Haluatko varmasti poistaa tämän pääsyavaimen?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Kysy ennen puheluiden aloittamista" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Pyydä pääsyavainta salasanasi jälkeen kirjautuessasi" @@ -4690,7 +4690,7 @@ msgstr "Liitteet" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Ääni" @@ -4851,14 +4851,14 @@ msgstr "Todennus" msgid "Authenticator" msgstr "Todennussovellus" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Todennussovellus" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Todennuskoodi" @@ -4928,7 +4928,7 @@ msgstr "Valtuutetut sovellukset" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Poissa juuri nyt" msgid "Back" msgstr "Takaisin" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Takaisin palveluun {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Takaisin rooleihin" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Takaisin asetuksiin" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Takaisin sisäänkirjautumiseen" @@ -5342,8 +5347,8 @@ msgstr "Askelpalautin" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Varakoodi" @@ -5351,7 +5356,7 @@ msgstr "Varakoodi" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Kirjanmerkkien enimmäismäärä saavutettu" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Puhelut" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera pois päältä" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera päällä" @@ -6364,9 +6369,9 @@ msgstr "Tiedostoja ei voi lähettää tähän" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Tiedostoja ei voi lähettää tähän" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Vaihda emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Vaihda kaverin lempinimi" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Vaihda ryhmän lempinimeäni" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Vaihda lempinimi" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Kanavan toiminnot" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanava lisätty suosikkeihin" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanava luotu" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Kanavan virheenkorjaus" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanava poistettu" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Kanavan tietue" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanava poistettu suosikeista" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Valitse profiilisi korostusväri" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Viimeistele tilisi rekisteröinti" @@ -7715,7 +7720,7 @@ msgstr "Viimeistele tilisi rekisteröinti ja vahvista sähköpostiosoitteesi, ni msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Viimeistele tilisi rekisteröinti lisäämällä sähköpostiosoite ja salasana. Lähetämme sähköpostiisi vahvistuskoodin ennen kuin rekisteröinti on valmis." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Viimeistele tilisi rekisteröinti, niin saat käyttöösi suojausominaisuuksia, kuten kaksivaiheisen todennuksen ja pääsyavaimet." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Tyhjennetäänkö pika-CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Tyhjennä haku" @@ -8103,7 +8108,7 @@ msgstr "Kloonaus on poistettu käytöstä" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Sulje" @@ -8160,11 +8165,9 @@ msgstr "Sulje valikkoriville" msgid "Close to tray" msgstr "Sulje ilmaisinalueelle" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Sulje ikkuna" @@ -8456,7 +8459,7 @@ msgstr "Viestintä" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Yhteisön virheenkorjaus" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Yhteisön oletus" @@ -8577,7 +8580,7 @@ msgstr "Yhteisön jäsenen tietue" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Yhteisön jäsenet" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Yhteisön ilmoitustaso" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Yhteisön ilmoitusasetukset" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Vertailu" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Suorita aikuisille tarkoitetun sisällön tarkistus" @@ -9093,7 +9096,7 @@ msgstr "Yhteys: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Pikavalikot voi avata vasemmalla napsautuksella (painikkeissa) tai oikea #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Jatka" msgid "Continue to checkout" msgstr "Jatka maksuun" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Jatka ja luo pääsyavain osoitteelle {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Jatka yhteisön ilmoittamiseen" msgid "Continue to report user" msgstr "Jatka käyttäjän ilmoittamiseen" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Jatka pääsyavaimella" @@ -9238,11 +9238,6 @@ msgstr "Jatka pääsyavaimella" msgid "Continue with SSO" msgstr "Jatka SSO-kirjautumisella" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Jatka pääsyavaimellasi ja kirjaudu sisään osoitteeseen {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Koordinoi hyökkäyksiä, joukkohäirintää tai ahdistelua ihmisiä tai #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Kopioitu" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kopioi kategorian tunnus" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kopioi kanavan tunnus" @@ -9421,12 +9416,12 @@ msgstr "Kopioi kanavalinkki" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Kopioi koodi" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Kopioi yhteisön tunnus" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Kopioi kutsulinkki" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Kopioi viesti" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Kopioi viestin tunnus" @@ -9570,7 +9565,7 @@ msgstr "Kopioi viestin tunnus" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Kopioi tarran URL-osoite" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Kopioi asetusavain todennussovellukseesi." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Kopioi käyttäjätunnus" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Kopioi käyttäjänimi" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Sovelluksen poistaminen epäonnistui" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Pääsyavaimen poistaminen epäonnistui" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Kutsua ei voitu lähettää" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Kutsua ei voitu lähettää. Yritä uudelleen." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Mainintojen eston ohituksen päivitys epäonnistui" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Pääsyavaimen kaksivaiheisen todennuksen päivitys epäonnistui" @@ -10206,6 +10201,11 @@ msgstr "Vaihtoehtoista tekstiä ei voitu päivittää. Yritä uudelleen." msgid "Couldn't update voice activity sharing right now" msgstr "Puheaktiivisuuden jakamista ei voitu päivittää juuri nyt" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Pääsyavaimen päivittäminen epäonnistui. Yritä uudelleen." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Profiilikuvan lataus epäonnistui" msgid "Couldn't upload banner" msgstr "Bannerin lataaminen epäonnistui" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Pääsyavaimen käyttäminen ponnahdusikkunassa epäonnistui. Yritä uudelleen." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Koodin vahvistaminen epäonnistui. Yritä uudelleen." msgid "Couldn't verify the connection" msgstr "Yhteyden vahvistaminen epäonnistui" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Pääsyavaimella varmentaminen epäonnistui. Yritä uudelleen." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Kotoisa" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Luo" @@ -10298,7 +10293,7 @@ msgstr "Luo uusi ryhmä käyttäjän {userName} kanssa" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Luo sovellus" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Luo kategoria" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Luo kanava" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Luo yhteisö" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Mukautettu varoitusteksti" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Mukautettu…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Virheenkorjaus" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Kanavan virheenkorjaus" @@ -11164,7 +11159,7 @@ msgstr "Viestin virheenkorjaus" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Käyttäjän virheenkorjaus" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Poista {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Poista tili" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Poista sovellus" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Poista liite" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Poista media" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Poista viesti" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Poista muiden jäsenten viestejä. Kiinnittämistä hallitaan erikseen." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Poista pääsyavain" @@ -11701,7 +11696,7 @@ msgstr "Kuvaile, mistä yhteisössäsi on kyse" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Kuvaus" @@ -11966,7 +11961,7 @@ msgstr "Laite:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Suora syöte" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Yksityisviesti" @@ -12050,7 +12045,7 @@ msgstr "Yksityisviestien esikatselut" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Yksityisviestit" @@ -12077,14 +12072,14 @@ msgstr "Suora lataus käytössä" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Poista käytöstä" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Poista tili käytöstä" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Yhteys katkaistu" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Löydettävissä oleva yhteisö" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Tunnistenumero" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Ohita" @@ -12477,7 +12472,7 @@ msgstr "Yksityisviesti- ja kaveripyyntöasetukset" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Yksityisviesti suljettu" @@ -12607,7 +12602,7 @@ msgstr "Ei estä. Voit avata keskustelun myöhemmin uudelleen." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Verkkotunnus" @@ -12697,7 +12692,7 @@ msgstr "Kaksoisnapsauta käyttäjää katsoaksesi hänen striimiään." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "hollanti" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "esim. YubiKey, iPhone, työkone" @@ -13092,7 +13087,7 @@ msgstr "Muokkaa yleisiä asetuksia, kuten nimeä, kuvausta ja kuvaketta." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Muokkaa ryhmää" @@ -13123,7 +13118,7 @@ msgstr "Muokkaa mediaa" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Muokkaa viestiä" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Oikeutettu hyvitykseen {windowEndsOn} asti. Tämä peruuttaa myös tilauksesi välittömästi." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Sähköposti" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji päivitetty" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojit" @@ -13525,7 +13520,7 @@ msgstr "Ei suosikkeja" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Ota käyttöön" @@ -13680,7 +13675,7 @@ msgstr "Ota mobiili-ilmoitukset käyttöön" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Ota ilmoitukset käyttöön" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Ota käyttöön integraatiot, joiden tunnukset olet määrittänyt. Näytetään vain käytettävissä olevat palvelut." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Ota kaksivaiheinen todennus käyttöön" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "englanti (Yhdysvallat)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Parannettu" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Anna uusi sähköpostiosoite" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Syötä jokin varakoodeistasi, jos et voi käyttää pääsyavaintasi." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Syötä jokin varakoodeistasi." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Kirjoita teksti" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Anna {digitCount}-numeroinen koodi todennussovelluksestasi tai varakoodi." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Syötä koodi ennen jatkamista." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Syötä koodi todennussovelluksestasi." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Kirjoita nimesi" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Anna salasanasi." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Vanhentui <0>{expiredDate}. <1/> eivät ole enää aktiivisia. Voit tilata uudelleen milloin tahansa." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Vanhenee" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Ilmaisujen automaattinen täydennys" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Ilmevalitsimen kategoriat" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Emojien valmistelu epäonnistui" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Rajattua kuvaa ei voitu käsitellä. Yritä uudelleen." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "SSO-kirjautumisen aloitus epäonnistui" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Tilin vaihtaminen epäonnistui" @@ -15053,7 +15048,7 @@ msgstr "Suosikit" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Suosikit" @@ -15268,6 +15263,11 @@ msgstr "Viimeistele tilin määritys" msgid "Finish account setup first" msgstr "Viimeistele ensin tilin määritys" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Viimeistele uudessa välilehdessä. Jos suljit sen, paina uudelleen Jatka pääsyavaimella." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Kansion nimi" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Kansion asetukset" @@ -15479,7 +15479,7 @@ msgstr "Minulle" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Tässä tarkistuksessa lähetät meille tekstiviestin sen sijaan, että saisit sen meiltä." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Vahvista turvallisuussyistä henkilöllisyytesi, jotta voit jatkaa." @@ -15606,7 +15606,7 @@ msgstr "Salasana unohtunut" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Unohditko salasanasi?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Vain kaverit ja pienet yhteisöt" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Kaverien kaverit" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Yleiset" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Saksa" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Hanki {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF-URL-osoitteet" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIFit" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Globaali pikanäppäin" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Takaisin" @@ -16374,6 +16374,11 @@ msgstr "Takaisin" msgid "Go back and enter a valid email." msgstr "Palaa ja anna kelvollinen sähköpostiosoite." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Palaa palveluun {productName}, niin voit jatkaa." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Piilota vanhenemishuomautukset" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Piilota suosikit" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Piilota mykistetyt" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Piilota mykistetyt kanavat" @@ -17358,7 +17363,7 @@ msgstr "Identiteetti" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inaktiivinen" @@ -17818,7 +17823,7 @@ msgstr "Sopimaton profiili" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Saapuneet" @@ -17867,7 +17872,7 @@ msgstr "Anna yhteisön tunnus." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Kutsusivun esikatselu" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Kutsu ihmisiä" @@ -18456,7 +18461,7 @@ msgstr "Kutsuja:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Kutsut" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Liity puheluun" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Liity yhteisöön" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Liittynyt palveluun {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Siirry" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Poista jäsen tästä yhteisöstä." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Poista jäsen yhteisöstä" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Poistu puhelusta" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Poistu yhteisöstä" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Linkinluonti" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Linkki kopioitu leikepöydälle" @@ -19859,8 +19864,8 @@ msgstr "Haittaohjelmat tai vaaralliset linkit" msgid "Malware, credential theft, or harmful files." msgstr "Haittaohjelmat, tunnusten varastaminen tai haitalliset tiedostot." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Hallitse" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Hallinnoi tilejä" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Hallitse sovelluksia ja laitteita, joilla on pääsy tilillesi" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Merkitse kaikki lukemattomat saapuneet-kanavat luetuiksi heti kysymättä vahvistusta" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Merkitse luetuksi" @@ -20021,7 +20026,7 @@ msgstr "Merkitse spoileriksi" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Merkitse lukemattomaksi" @@ -20169,7 +20174,7 @@ msgstr "Aikuisille tarkoitettu yhteisö" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Aikuisille tarkoitettu sisältö" @@ -20315,7 +20320,7 @@ msgstr "Mitataan…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "jäsentä" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Jäsenet" @@ -20616,7 +20621,7 @@ msgstr "Mainitaanko tämä rooli?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Maininnat" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Lisää mediatoimintoja" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Lisää vaihtoehtoja" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Mykistä puhelut" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Mykistä kategoria" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Mykistä yhteisöt" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Mykistä yhteisö" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Mykistä sisääntuloääni" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Mykistä suosikit" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Nimen on oltava vähintään 2 merkkiä pitkä" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Nimeä pääsyavain" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Pääsyavaimen nimeämislomake" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Tarvitsetko tilin?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Ei koskaan" @@ -22276,7 +22281,7 @@ msgstr "Uusimmat ensin" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Seuraava" @@ -22905,7 +22910,7 @@ msgstr "Käyttäjiä ei löytynyt" msgid "No verification is required." msgstr "Vahvistusta ei tarvita." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Vahvistustapoja ei ole saatavilla" @@ -23038,11 +23043,13 @@ msgstr "Sivua ei löydy" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Ei nyt" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Muistiinpano (näkyy vain sinulle)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Ei mitään" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Ilmoitusten ohitukset" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Ilmoitusasetukset" @@ -23152,7 +23159,7 @@ msgstr "Ilmoitusäänenvoimakkuus" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Pois päältä" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Selvä" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "paikalla" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Paikalla" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Vain jäsenet, joilla on \"{manageCommunityPermissionLabel}\" -käyttöoikeus, voivat muuttaa tätä asetusta." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Vain maininnat" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Avaa {labelText} asetuksissa" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Avaa {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Avoimet yksityisviestit" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Avaa yksityisviesti" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Avaa lasku {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Avaa linkki" @@ -23850,7 +23857,7 @@ msgstr "Avaa pikahaku" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Avaa asetukset" @@ -23935,11 +23942,6 @@ msgstr "Avaa teemastudion ponnahdusikkuna" msgid "Open theme studio…" msgstr "Avaa teemastudio…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Avaa tämä ikkuna {productName}-sovelluksesta, jotta voit käyttää pääsyavaintasi." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Valinnat" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Pääsyavain" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Pääsyavaimen nimi" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Pääsyavain päivitetty" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Pääsyavaimet" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Pääsyavaimet edellyttävät allekirjoitettua macOS-pakettia, jossa on kelvollinen sovellustunniste. Asenna allekirjoitettu työpöytäsovellus ja yritä uudelleen." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Salasana" msgid "Password changed" msgstr "Salasana vaihdettu" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Salasananhallintaohjelmat eivät ehkä tarjoa pääsyavaintasi tässä verkko-osoitteessa. Kokeile sen sijaan ponnahdusikkunaa vanhassa osoitteessa." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Liitä viestin linkki." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Oma sanakirja" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Omat muistiinpanot" @@ -24885,7 +24887,7 @@ msgstr "Kiinnitä ryhmäkeskustelu" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Kiinnitä viesti" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "kiinnitetty" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Kiinnitetty yksityisviesti" @@ -25020,7 +25022,7 @@ msgstr "Alustan ylläpitäjä" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Toista" @@ -25318,6 +25320,11 @@ msgstr "Paina näppäintä, hiiren painiketta tai peliohjaimen painiketta, jonka msgid "Press a shortcut…" msgstr "Paina pikanäppäintä…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Paina Jatka käyttääksesi pääsyavaintasi." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Ensisijainen kieli" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Päänavigointi" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Tietosuojakäytäntö" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Tietosuoja-asetukset" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Vinkki:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Jatka" @@ -26090,7 +26097,7 @@ msgstr "Reagoi emojilla {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Uudelleenluonti mitätöi nykyisen tunnuksen. Päivitä kaikki koodi, joka käyttää vanhaa arvoa." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Rekisteröidy" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Rekisteröidyt pääsyavaimet" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Poista banneri" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Poista kirjanmerkki" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Poista sanakirjasta" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Poista suosikeista" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Poistettu suosikki-GIFeistä" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Poistettu suosikeista" @@ -27032,7 +27039,7 @@ msgstr "Käyttöoikeuksien poistaminen voi rajoittaa botin ominaisuuksia." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Kun jäähy poistetaan, <0>{targetUserTag} voi taas lähettää viestejä, reagoida ja liittyä äänikanaville." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Nimeä uudelleen" @@ -27119,7 +27126,7 @@ msgstr "Vastaukset" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Vastaa" @@ -27209,7 +27216,7 @@ msgstr "Ilmoita ongelmasta" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Ilmoita viestistä" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Vaadi 2FA moderointitoimiin" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Vaadi pääsyavain toisena vaiheena" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Palautuslinkki virheellinen tai vanhentunut" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Nollaa aikuisille tarkoitetun sisällön hyväksyntä" @@ -27880,7 +27887,7 @@ msgstr "Kuvan käänteishaku" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Käänteinen kuvahaku" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Tarkista ja vahvista" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Tarkista sovellukset, joilla on pääsy tiliisi." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Tarkastele aiempia ostoksia ja hyvitysvaihtoehtoja" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Tarkista sisäänkirjautuneet laitteet ja kirjaa ulos tuntemattomat istunnot." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rooli päivitetty" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Roolit" @@ -28261,7 +28268,7 @@ msgstr "Kylläisyys" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Hakualue" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Käyttöoikeudet" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Näytönlukuohjelma" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Hae kanavia, henkilöitä tai yhteisöjä" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Hae kavereita" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Hae valittua tekstiä" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Hae asetuksista" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Hae asetuksista…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Turvallisuus" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Turvallisuusominaisuudet" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Turva-avain" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Turva-avain / pääsyavain" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Arkaluonteinen media" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Lähetetty" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Istunto" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Tilin {identifier} istunto on vanhentunut. Kirjaudu sisään uudelleen." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Määrittää kaikkien äänitehosteiden voimakkuuden. Yksittäisten äänien ohitukset eivät huomioi tätä asetusta." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Asetukset avattu." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Asetusosiot" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Sivupalkki" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Kirjaudu sisään" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Kirjaudu sisään lunastaaksesi lahjasi" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Kirjaudu sisään selaimella" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Kirjaudu sisään pääsyavaimella" @@ -30666,7 +30673,7 @@ msgstr "Kirjaudu sisään organisaatiosi kertakirjautumispalvelun kautta." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Kirjaudu ulos" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Kirjautumistiedot" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Kirjautumisprosessi" @@ -31189,7 +31196,7 @@ msgstr "Joitakin käyttäjiä ei voi lisätä" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Jokin meni pieleen" @@ -31374,7 +31381,7 @@ msgstr "Äänenvoimakkuus" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Äänet" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Aloita liitteiden lataaminen heti, kun ne on lisätty viestikenttään" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Aloita videopuhelu" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Aloita äänipuhelu" @@ -31899,7 +31906,7 @@ msgstr "tarra" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Tarra: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Tarrat" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Lopetetaanko kaikkiin linkkeihin luottaminen?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Lopetetaanko pääsyavainten käyttö kaksivaiheisessa todennuksessa?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Estä kaikki roolimaininnat" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Piilota upotukset" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "tekstikanava" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Tekstikanava" @@ -33055,7 +33062,7 @@ msgstr "Lähetä meille tekstiviesti puhelimestasi" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Tekstistä puheeksi" @@ -33119,6 +33126,11 @@ msgstr "Tämä ei valmistunut. Olet ehkä jo poistunut joistakin yhteisöistä, msgid "That did not go through. Nothing changed. Try again." msgstr "Tämä ei mennyt läpi. Mikään ei muuttunut. Yritä uudelleen." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Se ei onnistunut. Yritä uudelleen tai peruuta." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Tuo ei näytä kelvolliselta väriltä. Kokeile heksakoodia, rgb()- tai hsl()-arvoa tai CSS-värinimeä." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Kuvaa ei voitu käyttää. Kokeile toista tiedostoa." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Kuva on virheellinen. Kokeile toista." @@ -34035,11 +34047,11 @@ msgstr "Tämä on toisen vaihtoehdon kuvaus" msgid "This is the third option description" msgstr "Tämä on kolmannen vaihtoehdon kuvaus" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Tämä on viimeinen pääsyavaimesi, ja pääsyavaimet ovat tilisi toinen vaihe. Jos poistat sen, kaksivaiheinen todennus poistuu käytöstä tililläsi ja nykyiset varakoodisi lakkaavat toimimasta." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Tämä on viimeinen pääsyavaimesi. Kun se on poistettu, et voi enää käyttää pääsyavainta toisena vaiheena." @@ -34154,16 +34166,6 @@ msgstr "Tämän osallistujan äänet on mykistetty" msgid "This participant was deafened by moderators" msgstr "Moderaattorit mykistivät tämän osallistujan äänet" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Tätä pääsyavainpyyntöä ei voitu vahvistaa. Sulje tämä ikkuna ja yritä uudelleen." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Tämä pääsyavainpyyntö aikakatkaistiin. Sulje tämä ikkuna ja yritä uudelleen." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Tämä poistaa kaikki luotetut verkkotunnukset. Näet ulkoisen linkin va msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Tämä poistaa kaikki mukautetut pikanäppäimet ja ottaa käyttöön kaikki sisäänrakennetut pikanäppäimet uudelleen. Tätä toimintoa ei voi kumota." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Tämä pyyntö on vanhentunut. Palaa takaisin ja yritä uudelleen." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Tämä palautuslinkki on vanhentunut. Palautuslinkit ovat voimassa 1 tunnin. Pyydä uusi linkki." @@ -34807,7 +34814,7 @@ msgstr "Siirretäänkö ryhmän omistajuus käyttäjälle {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Siirrä omistajuus" @@ -34823,7 +34830,7 @@ msgstr "Omistajuus siirretty käyttäjälle {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Käännä" @@ -34980,7 +34987,7 @@ msgstr "Kokeile toista muuttujan nimeä tai tyhjennä haku." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Yritä uudelleen" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Yritä uudelleen" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Yritä hetken kuluttua uudelleen." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Kokeile hakea esimerkiksi sanoilla \"teema\", \"ilmoitukset\" tai \"tietosuoja\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Käytä mieluummin turva-avainta tai pääsyavainta" @@ -35088,7 +35095,7 @@ msgstr "Turkki" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Poista käytöstä" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Poista tämän lähteen äänen jakaminen tai yritä uudelleen hetken kuluttua." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Sammuta kamera" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Poista suoratoiston yksityisyys käytöstä ennen kuin tarkastelet kirjautumis- tai tilin suojaustietoja." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Ota käyttöön" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Kaksivaiheinen todennus" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Kaksivaiheinen todennus" @@ -35288,7 +35295,7 @@ msgstr "Kaksivaiheinen todennus poistettu käytöstä" msgid "Two-factor authentication enabled" msgstr "Kaksivaiheinen todennus otettu käyttöön" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Kaksivaiheinen todennus on käytössä" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Poista esto" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Luokittelematon" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Alleviivaa verkkosivustojen linkit" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Selvä" @@ -35643,7 +35650,7 @@ msgstr "Yleinen vararatkaisu. Huonoin laatu, mutta toimii kaikkialla." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Poista kaikkien laitteiden mykistys" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Poista kategorian mykistys" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Poista yhteisöjen mykistys" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Poista yhteisön mykistys" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Poista yksityisviestien mykistys" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Poista suosikkien mykistys" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Irrota kiinnitys" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Poista viestin kiinnitys" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Poistetaanko viestin kiinnitys?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Yksityisviestin kiinnitys poistettu" @@ -36193,6 +36200,11 @@ msgstr "Päivitä sähköpostiosoite" msgid "Update my status" msgstr "Päivitä tilani" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Päivitä pääsyavain" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Päivitä jäähy" msgid "Update your own nickname." msgstr "Päivitä oma lempinimesi." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Päivitä pääsyavaimesi" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Määritä erillisessä ikkunassa viestihistorian raja-aika jäsenille, msgid "Use a different email address and verify it with a code." msgstr "Käytä toista sähköpostiosoitetta ja vahvista se koodilla." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Käytä salasananhallintaohjelman pääsyavainta" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Käytä todellista arvoa" msgid "Use alternative method" msgstr "Käytä toista maksutapaa" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Käytä todennussovellusta luodaksesi koodeja kaksivaiheiseen todennukseen" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Käytä vain, jos se rikkoo selkeästi {productName}-palvelun sääntöjä eikä sovi yllä oleviin kohtiin." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Käytetäänkö pääsyavaimia kaksivaiheisessa todennuksessa?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Käytä pääsyavaimia kirjautuaksesi sisään ilman salasanaa" @@ -36824,8 +36836,8 @@ msgstr "Käytä puheentunnistusta" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Käytä käyttöjärjestelmäsi oikolukua, jos se on saatavilla. Muussa tapauksessa käytä {productName}-sovelluksen sisäänrakennettuja sanakirjoja." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Käytä pääsyavaintasi" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Käyttäjäsäätimet" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Käyttäjän virheenkorjaus" @@ -36972,7 +36984,7 @@ msgstr "Käyttäjän äänenvoimakkuus" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Vahvistus peruutettu" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Vahvistuskoodi" @@ -37185,7 +37197,7 @@ msgstr "Vahvistussähköposti lähetetty. Tarkista saapuneet-kansiosi." msgid "Verification expired" msgstr "Vahvistus vanhentui" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Vahvistettu yhteisö" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Vahvista" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Vahvista yhteys" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Vahvista sähköposti" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Vahvista henkilöllisyys -lomake" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Vahvista henkilöllisyytesi" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Vahvista sähköpostiosoitteesi lähettääksesi kaveripyyntöjä." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Vahvista sähköpostiosoitteesi ennen pääsyavaimen lisäämistä." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Vahvista sähköpostiosoitteesi ennen todennussovelluksen lisäämistä." @@ -37571,7 +37583,7 @@ msgstr "Näytä ja hallinnoi porttikiellettyjä käyttäjiä." msgid "View and manage every webhook configured across your community." msgstr "Tarkastele ja hallinnoi kaikkia yhteisöösi määritettyjä webhookeja." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Näytä ja hallinnoi varakoodejasi tilin palauttamista varten" @@ -37605,7 +37617,7 @@ msgstr "Näytä kanava" msgid "View channel members" msgstr "Näytä kanavan jäsenet" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Näytä koodit" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Näytä tilausvaihtoehdot" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Näytä profiili" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "äänikanava" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Äänikanava" @@ -38073,7 +38085,7 @@ msgstr "Mitätöity" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Odota tässä" msgid "Waiting for connection..." msgstr "Odotetaan yhteyttä..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Odotetaan pääsyavainta…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Katso" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Katso lähetystä" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Verkkosivujen esikatselut" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Tervetuloa takaisin" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Et ole tällä hetkellä missään yhteisössä." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Olet estänyt käyttäjän {userName}. Et voi lähettää viestejä, ellet poista estoa." @@ -39101,6 +39113,11 @@ msgstr "Voit peruuttaa poistoprosessin 14 päivän kuluessa" msgid "You can close this modal. The import will continue in the background." msgstr "Voit sulkea tämän ikkunan. Tuonti jatkuu taustalla." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Voit sulkea tämän välilehden" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Voit nyt sulkea tämän välilehden ja palata takaisin sovellukseen." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Et voi lähettää itsellesi kaveripyyntöä." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Et voi lähettää viestejä tällä kanavalla." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Sinun täytyy vielä suorittaa sähköpostivaihe." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Sinulta ei enää kysytä pääsyavainta salasanasi jälkeen. Todennussovelluksesi pysyy toisena vaiheena." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Joudut kirjautumaan sisään uudelleen kaikilla uloskirjatuilla laitteilla" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Tarvitset jonkin pääsyavaimistasi kirjautuaksesi sisään uudella laitteella. Jos menetät kaikki pääsyavaimesi, voit lukkiutua pysyvästi ulos tililtäsi. Varakoodit tallennetaan puolestasi, joten pääset silti tilillesi." @@ -39918,12 +39935,12 @@ msgstr "Tilisi on liian uusi viestien lähettämiseen tässä yhteisössä." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Tilipyyntösi odottaa hyväksyntää. Voit kirjautua sisään, kun ylläpitäjä on hyväksynyt sen." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Tilisi edellyttää monivaiheista todennusta, mutta tällä laitteella ei ole tuettuja menetelmiä käytössä. Kirjaudu sisään laitteella, jossa on todennussovelluksesi tai turva-avaimesi, tai ota yhteyttä tukeen." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Tilisi ei ole enää suojattu kaksivaiheisella todennuksella, kun kirjaudut sisään salasanallasi. Menetät myös korotetut käyttöoikeudet yhteisöissä, jotka vaativat kaksivaiheista todennusta." @@ -39941,16 +39958,6 @@ msgstr "Toimintoasi ei voitu suorittaa, koska turvajärjestelmämme merkitsivät msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Hakemuksesi odottaa tarkistusta. Voit edelleen päivittää listauksesi tietoja tai peruuttaa hakemuksen." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Selaimesi esti pääsyavaimen ponnahdusikkunan. Salli ponnahdusikkunat tältä sivustolta ja yritä uudelleen." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Selaimesi ei tue pääsyavaimia tällä verkkotunnuksella. Päivitä selaimesi tai kirjaudu sisään salasanallasi ja kaksivaiheisen todennuksen koodilla." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Yhteisössäsi on oltava vähintään {minMemberCount, plural, one {# j msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Luottokorttisi on tarkistettu. Jos kortti on kelvollinen, aikuisille tarkoitettu sisältö avautuu pian. Voit sulkea tämän välilehden ja palata sovellukseen." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Laitteesi pyytää sinua tallentamaan päivitetyn version pääsyavaimesta {name}. Se korvaa vanhan." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Laitteesi pyytää sinua tallentamaan päivitetyn version pääsyavaimesta {name}. Käytä samaa puhelinta tai turva-avainta, jota juuri käytit." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoomaa" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Lähennä" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/fr/messages.po b/fluxer_app/src/features/i18n/locales/fr/messages.po index 6d874e0bc..33a302615 100644 --- a/fluxer_app/src/features/i18n/locales/fr/messages.po +++ b/fluxer_app/src/features/i18n/locales/fr/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {membre} other {membres}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# mention} many {# mentions} other {# mentions}}" @@ -2370,8 +2370,8 @@ msgstr "6 mois" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "Code à 6 chiffres" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Personnalisation de l’état du compte et de l’abonnement premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Accès au compte" @@ -2807,7 +2807,7 @@ msgstr "Abonné mensuel actif (résiliation programmée)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Ajoutez un compte pour continuer." msgid "Add an email and password to your account first." msgstr "Ajoutez d'abord un e-mail et un mot de passe à votre compte." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Ajoutez une couche de sécurité supplémentaire à votre compte" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Ajouter le bot à une destination" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Ajouter un salon" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Ajouter de nouvelles réactions aux messages." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Ajouter une note" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Ajouter des permissions spécifiques" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Ajouter une clé d'accès" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Ajouter une réaction" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Ajouter au dictionnaire" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Ajouter aux favoris" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Ajouté aux GIF favoris" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Ajouté aux favoris" @@ -3296,11 +3296,11 @@ msgstr "Ajouté aux favoris" msgid "Added to saved media" msgstr "Ajouté aux médias enregistrés" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Ajouté : {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Ajouté : {createdDate} • dernière utilisation : {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Toutes les langues" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Tous les messages" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Déjà supprimé" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Vous avez déjà un compte ?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Zoom de l'application" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Niveau de zoom de l’application" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Approuver" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Approuvez cette application depuis l'application {productName} que vous utilisez déjà. Aucun mot de passe requis." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Voulez-vous vraiment supprimer la catégorie « {categoryName} » ? Cette action est irréversible." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Voulez-vous vraiment supprimer la clé d'accès <0>{0} ?" @@ -4493,7 +4493,7 @@ msgstr "Voulez-vous vraiment supprimer cette pièce jointe ? Cette action est ir msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Voulez-vous vraiment supprimer cette communauté ? Cette action est irréversible. Tous les salons, messages et paramètres seront définitivement supprimés." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Voulez-vous vraiment supprimer cette clé d'accès ?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Demander confirmation avant de lancer des appels" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Demander une clé d'accès après votre mot de passe lors de la connexion" @@ -4690,7 +4690,7 @@ msgstr "Pièces jointes" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Audio" @@ -4851,14 +4851,14 @@ msgstr "Authentification" msgid "Authenticator" msgstr "Authentificateur" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Application d'authentification" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Code d'authentification" @@ -4928,7 +4928,7 @@ msgstr "Applications autorisées" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Absent(e) pour le moment" msgid "Back" msgstr "Retour" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Retour à {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Retour aux rôles" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Retour aux paramètres" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Retour à la connexion" @@ -5342,8 +5347,8 @@ msgstr "Retour arrière" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Code de secours" @@ -5351,7 +5356,7 @@ msgstr "Code de secours" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Limite de messages enregistrés atteinte" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Appels" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Caméra désactivée" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Caméra activée" @@ -6364,9 +6369,9 @@ msgstr "Impossible d’envoyer des fichiers ici" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Impossible d’envoyer des fichiers ici" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Modifier l'emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Modifier le surnom de l’ami" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Modifier mon surnom dans le groupe" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Modifier le surnom" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Actions du salon" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Salon ajouté aux favoris" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Salon créé" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Débogage du salon" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Salon supprimé" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Données du salon" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Salon retiré des favoris" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Choisir la couleur d'accentuation de votre profil" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Finaliser l’inscription" @@ -7715,7 +7720,7 @@ msgstr "Finalisez votre inscription et vérifiez votre adresse e-mail pour envoy msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Finalisez votre inscription en ajoutant une adresse e-mail et un mot de passe à votre compte. Nous vous enverrons un code pour vérifier votre adresse e-mail avant de terminer." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Finalisez votre inscription pour accéder aux fonctionnalités de sécurité comme l’authentification à deux facteurs et les clés d’accès." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Effacer le CSS rapide ?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Effacer la recherche" @@ -8103,7 +8108,7 @@ msgstr "Le clonage est désactivé" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Fermer" @@ -8160,11 +8165,9 @@ msgstr "Fermer dans la barre de menus" msgid "Close to tray" msgstr "Fermer vers la zone de notification" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Fermer la fenêtre" @@ -8456,7 +8459,7 @@ msgstr "Communication" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Débogage de la communauté" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Réglage par défaut de la communauté" @@ -8577,7 +8580,7 @@ msgstr "Fiche de membre de la communauté" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Membres de la communauté" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Niveau de notification de la communauté" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Paramètres de notification de la communauté" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Comparaison" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Vérifier l’accès aux contenus pour adultes" @@ -9093,7 +9096,7 @@ msgstr "Connexion : {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Les menus contextuels peuvent être ouverts par un clic gauche (sur les #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Continuer" msgid "Continue to checkout" msgstr "Continuer vers le paiement" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Continuer pour créer une clé d'accès pour {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Poursuivre le signalement de la communauté" msgid "Continue to report user" msgstr "Poursuivre le signalement de l’utilisateur" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Continuer avec une clé d'accès" @@ -9238,11 +9238,6 @@ msgstr "Continuer avec une clé d'accès" msgid "Continue with SSO" msgstr "Continuer avec l'authentification unique" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Continuer avec votre clé d'accès pour vous connecter à {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Coordonne des raids, des attaques collectives ou du harcèlement contre #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Copié" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Copier l'ID de la catégorie" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Copier l'identifiant du salon" @@ -9421,12 +9416,12 @@ msgstr "Copier le lien du salon" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Copier le code" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Copier l'identifiant de la communauté" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Copier le lien d'invitation" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Copier le message" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Copier l'ID du message" @@ -9570,7 +9565,7 @@ msgstr "Copier l'ID du message" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Copier l'URL du sticker" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Copiez la clé de configuration dans votre application d’authentificat #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Copier l'identifiant de l'utilisateur" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Copier le nom d'utilisateur" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Impossible de supprimer l’application" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Impossible de supprimer la clé d’accès" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Impossible d’envoyer l’invitation" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Impossible d'envoyer l'invitation. Veuillez réessayer." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Impossible de mettre à jour le contournement de la suppression des mentions" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Impossible de mettre à jour l'authentification à deux facteurs par clé d'accès" @@ -10206,6 +10201,11 @@ msgstr "Impossible de mettre à jour le texte alternatif. Veuillez réessayer." msgid "Couldn't update voice activity sharing right now" msgstr "Impossible de mettre à jour le partage d'activité vocale pour le moment" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Impossible de mettre à jour votre clé d'accès. Réessayez." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Impossible d’envoyer l’avatar" msgid "Couldn't upload banner" msgstr "Impossible d’envoyer la bannière" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Impossible d'utiliser votre clé d'accès dans la fenêtre contextuelle. Réessayez." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Impossible de vérifier ce code. Veuillez réessayer." msgid "Couldn't verify the connection" msgstr "Impossible de vérifier la connexion" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Impossible de vérifier avec la clé d'accès. Veuillez réessayer." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Confortable" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Créer" @@ -10298,7 +10293,7 @@ msgstr "Créer un nouveau groupe avec {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Créer une application" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Créer une catégorie" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Créer un salon" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Créer une communauté" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Texte d'avertissement personnalisé" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Personnalisé…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Débogage" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Déboguer le salon" @@ -11164,7 +11159,7 @@ msgstr "Déboguer le message" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Déboguer l'utilisateur" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Supprimer {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Supprimer le compte" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Supprimer l'application" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Supprimer la pièce jointe" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Supprimer le média" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Supprimer le message" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Supprimer les messages des autres membres. L'épinglage est géré séparément." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Supprimer la clé d'accès" @@ -11701,7 +11696,7 @@ msgstr "Décrivez votre communauté" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Description" @@ -11966,7 +11961,7 @@ msgstr "Appareil :" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Entrée directe" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Message privé" @@ -12050,7 +12045,7 @@ msgstr "Aperçus des messages privés" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Messages privés" @@ -12077,14 +12072,14 @@ msgstr "Envoi direct actif" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Désactiver" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Désactiver le compte" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Déconnecté" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Communauté présente dans Découverte" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Numéro de distinction" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Ignorer" @@ -12477,7 +12472,7 @@ msgstr "Paramètres des messages privés et des demandes d'amis" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "MP fermé" @@ -12607,7 +12602,7 @@ msgstr "Ne bloque pas la personne. Vous pourrez rouvrir la conversation plus tar #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domaine" @@ -12697,7 +12692,7 @@ msgstr "Double-cliquez sur une personne pour regarder sa diffusion." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Néerlandais" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "ex. : YubiKey, iPhone, ordinateur professionnel" @@ -13092,7 +13087,7 @@ msgstr "Modifier les paramètres généraux comme le nom, la description et l'ic #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Modifier le groupe" @@ -13123,7 +13118,7 @@ msgstr "Modifier le média" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Modifier le message" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Remboursement possible jusqu’au {windowEndsOn}. Cela résiliera également votre abonnement immédiatement." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-mail" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji mis à jour" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojis" @@ -13525,7 +13520,7 @@ msgstr "Favoris vides" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Activer" @@ -13680,7 +13675,7 @@ msgstr "Activer les notifications push sur mobile" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Activer les notifications" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Activez les intégrations pour lesquelles vous avez configuré les identifiants. Seuls les services disponibles sont affichés." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Activer l'authentification à deux facteurs" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Anglais (États-Unis)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Améliorée" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Saisir la nouvelle adresse e-mail" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Saisissez l'un de vos codes de secours si vous ne pouvez pas utiliser votre clé d'accès." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Saisissez l'un de vos codes de secours." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Saisir du texte" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Saisissez le code à {digitCount} chiffres de votre application d'authentification ou un code de secours." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Saisissez le code avant de continuer." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Saisissez le code de votre application d'authentification." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Saisissez votre nom" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Saisissez votre mot de passe." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Expiré le <0>{expiredDate}. Les <1/> ne sont plus actifs. Vous pouvez vous réabonner à tout moment." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Expire le" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Saisie semi-automatique des expressions" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Catégories du sélecteur d’expressions" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Échec de la préparation des emojis" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Impossible de traiter l'image recadrée. Veuillez réessayer." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Échec du démarrage de l'authentification unique (SSO)" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Échec du changement de compte" @@ -15053,7 +15048,7 @@ msgstr "Favoris" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favoris" @@ -15268,6 +15263,11 @@ msgstr "Finaliser l’inscription" msgid "Finish account setup first" msgstr "Finalisez d’abord votre inscription" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Terminez dans le nouvel onglet. Si vous l'avez fermé, appuyez à nouveau sur Continuer avec une clé d'accès." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Nom du dossier" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Paramètres du dossier" @@ -15479,7 +15479,7 @@ msgstr "Pour moi" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Pour cette vérification, vous nous envoyez un SMS au lieu d’en recevoir un de notre part." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Pour votre sécurité, veuillez confirmer votre identité pour continuer." @@ -15606,7 +15606,7 @@ msgstr "Mot de passe oublié" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Mot de passe oublié ?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Amis et petites communautés uniquement" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Amis d'amis" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "RGPD" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Général" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Allemagne" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Obtenir {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URL de GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Raccourci global" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Retour" @@ -16374,6 +16374,11 @@ msgstr "Retour" msgid "Go back and enter a valid email." msgstr "Retournez en arrière et saisissez une adresse e-mail valide." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Retournez à {productName} pour continuer." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Masquer les notes de bas de page d'expiration" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Masquer les favoris" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Masquer les discussions mises en sourdine" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Masquer les salons mis en sourdine" @@ -17358,7 +17363,7 @@ msgstr "Identité" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inactif" @@ -17818,7 +17823,7 @@ msgstr "Profil inapproprié" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Boîte de réception" @@ -17867,7 +17872,7 @@ msgstr "Incluez l'ID de la communauté." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Aperçu de la page d'invitation" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Inviter des personnes" @@ -18456,7 +18461,7 @@ msgstr "Auteur de l’invitation :" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Invitations" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Rejoindre l'appel" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Rejoindre la communauté" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "A rejoint {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Aller à" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Expulser un membre de cette communauté." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Expulser le membre" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Quitter l'appel" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Quitter la communauté" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Générateur de liens" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Lien copié dans le presse-papiers" @@ -19859,8 +19864,8 @@ msgstr "Logiciels malveillants ou liens dangereux" msgid "Malware, credential theft, or harmful files." msgstr "Logiciels malveillants, vol d'identifiants ou fichiers nuisibles." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Gérer" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Gérer les comptes" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Gérez les applications et les appareils qui ont accès à votre compte" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Marquer immédiatement tous les salons non lus de la boîte de réception comme lus, sans demander de confirmation" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Marquer comme lu" @@ -20021,7 +20026,7 @@ msgstr "Marquer comme spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Marquer comme non lu" @@ -20169,7 +20174,7 @@ msgstr "Communauté réservée aux adultes" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Contenu pour adultes" @@ -20315,7 +20320,7 @@ msgstr "Mesure…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "membres" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Membres" @@ -20616,7 +20621,7 @@ msgstr "Mentionner ce rôle ?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Mentions" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Plus d'actions sur les médias" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Plus d'options" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Couper le son des appels" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Désactiver les notifications de la catégorie" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Désactiver les notifications des communautés" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Désactiver les notifications de la communauté" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Désactiver le son d'entrée" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Désactiver les notifications des favoris" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Le nom doit contenir au moins 2 caractères" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Nommer la clé d'accès" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formulaire pour nommer la clé d’accès" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Besoin d'un compte ?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Jamais" @@ -22276,7 +22281,7 @@ msgstr "Du plus récent au plus ancien" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Suivant" @@ -22905,7 +22910,7 @@ msgstr "Aucun utilisateur trouvé" msgid "No verification is required." msgstr "Aucune vérification n'est requise." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Aucune méthode de vérification disponible" @@ -23038,11 +23043,13 @@ msgstr "Page introuvable" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Pas maintenant" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Note (visible uniquement par vous)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Aucun" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Réglages de notification spécifiques" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Paramètres de notification" @@ -23152,7 +23159,7 @@ msgstr "Volume des notifications" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Désactivé" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Hors ligne" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "OK" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "en ligne" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "En ligne" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Seuls les membres disposant de la permission « {manageCommunityPermissionLabel} » peuvent modifier ce réglage." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Mentions seulement" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Ouvrir {labelText} dans les paramètres" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Ouvrir {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Messages privés ouverts" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Ouvrir le MP" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Ouvrir la facture {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Ouvrir le lien" @@ -23850,7 +23857,7 @@ msgstr "Ouvrir le Sélecteur rapide" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Ouvrir les réglages" @@ -23935,11 +23942,6 @@ msgstr "Ouvrir la fenêtre contextuelle du studio de thèmes" msgid "Open theme studio…" msgstr "Ouvrir le studio de thèmes…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Ouvrez cette fenêtre depuis {productName} pour utiliser votre clé d'accès." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Options" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Clé d'accès" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Nom de la clé d'accès" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Clé d'accès mise à jour" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Clés d'accès" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Les clés d'accès nécessitent un paquet macOS signé avec un identifiant d'application valide. Installez le client de bureau signé et réessayez." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Mot de passe" msgid "Password changed" msgstr "Mot de passe modifié" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Les gestionnaires de mots de passe ne proposent peut-être pas votre clé d'accès à cette adresse web. Essayez-la plutôt dans une fenêtre contextuelle sur l'ancienne adresse." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Collez le lien du message." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Dictionnaire personnel" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Notes personnelles" @@ -24885,7 +24887,7 @@ msgstr "Épingler la conversation de groupe" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Épingler le message" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "épinglé" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "MP épinglé" @@ -25020,7 +25022,7 @@ msgstr "Admin de la plateforme" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Lire" @@ -25318,6 +25320,11 @@ msgstr "Appuyez sur une touche, un bouton de souris ou de manette pour l'assigne msgid "Press a shortcut…" msgstr "Appuyez sur un raccourci…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Appuyez sur Continuer pour utiliser votre clé d'accès." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Langue principale" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Navigation principale" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Politique de confidentialité" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Paramètres de confidentialité" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Astuce pro :" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Continuer" @@ -26090,7 +26097,7 @@ msgstr "Réagir avec {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "La régénération invalidera le jeton actuel. Mettez à jour tout code qui utilise l'ancienne valeur." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "S'inscrire" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Clés d'accès enregistrées" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Supprimer la bannière" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Retirer des messages enregistrés" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Retirer du dictionnaire" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Retirer des favoris" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Supprimé des GIF favoris" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Retiré des favoris" @@ -27032,7 +27039,7 @@ msgstr "Retirer des permissions peut limiter les fonctionnalités du bot." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Lever la restriction temporaire permettra à <0>{targetUserTag} d’envoyer des messages, de réagir et de rejoindre à nouveau les salons vocaux." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Renommer" @@ -27119,7 +27126,7 @@ msgstr "Réponses" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Répondre" @@ -27209,7 +27216,7 @@ msgstr "Signaler un problème" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Signaler le message" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Exiger la 2FA pour les actions de modération" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Exiger une clé d'accès comme deuxième facteur" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Lien de réinitialisation non valide ou expiré" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Réinitialiser l’acceptation des contenus pour adultes" @@ -27880,7 +27887,7 @@ msgstr "Recherche d'image inversée" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Recherche d'image inversée" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Vérifier et confirmer" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Consultez les applications autorisées à accéder à votre compte." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Consulter les achats passés et les options de remboursement" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Consultez les appareils connectés et fermez les sessions que vous ne reconnaissez pas." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rôle mis à jour" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Rôles" @@ -28261,7 +28268,7 @@ msgstr "Saturation" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Portée" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Portées" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Lecteur d'écran" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Rechercher des salons, des personnes ou des communautés" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Rechercher des amis" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Rechercher le texte sélectionné" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Rechercher dans les réglages" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Rechercher dans les réglages…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Sécurité" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Fonctionnalités de sécurité" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Clé de sécurité" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Clé de sécurité / clé d’accès" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Médias sensibles" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Envoyé" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Session" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Votre session pour {identifier} a expiré. Veuillez vous reconnecter." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Définit le volume de tous les effets sonores. Les réglages individuels des sons ignorent ce paramètre." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Paramètres ouverts." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Sections des paramètres" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Barre latérale" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Se connecter" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Connectez-vous pour récupérer votre cadeau" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Se connecter via le navigateur" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Se connecter avec une clé d'accès" @@ -30666,7 +30673,7 @@ msgstr "Connectez-vous avec le fournisseur d'authentification unique de votre or #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Se déconnecter" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Informations de connexion" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Parcours de connexion" @@ -31189,7 +31196,7 @@ msgstr "Certains utilisateurs ne peuvent pas être ajoutés" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Une erreur est survenue" @@ -31374,7 +31381,7 @@ msgstr "Volume sonore" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Sons" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Commencer l’envoi des pièces jointes dès leur ajout dans la zone de rédaction du message" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Démarrer un appel vidéo" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Lancer un appel vocal" @@ -31899,7 +31906,7 @@ msgstr "sticker" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Sticker : {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Stickers" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Arrêter de faire confiance à tous les liens ?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Ne plus utiliser de clés d'accès pour l'authentification à deux facteurs ?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Ignorer toutes les mentions de rôles" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Masquer les contenus intégrés" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "salon textuel" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Salon textuel" @@ -33055,7 +33062,7 @@ msgstr "Envoyez-nous un SMS depuis votre téléphone" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Synthèse vocale" @@ -33119,6 +33126,11 @@ msgstr "Cela n'a pas abouti. Certaines communautés ont peut-être déjà été msgid "That did not go through. Nothing changed. Try again." msgstr "Cela n'a pas fonctionné. Rien n'a changé. Réessayez." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Cela n'a pas fonctionné. Réessayez ou annulez." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Ceci ne semble pas être une couleur valide. Essayez le format hexadécimal, rgb(), hsl() ou un nom de couleur CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Cette image n'a pas pu être utilisée. Essayez un autre fichier." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Cette image n'est pas valide. Veuillez en essayer une autre." @@ -34035,11 +34047,11 @@ msgstr "Ceci est la description de la deuxième option" msgid "This is the third option description" msgstr "Ceci est la description de la troisième option" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "C'est votre dernière clé d'accès, et les clés d'accès sont votre deuxième facteur. La supprimer désactivera l'authentification à deux facteurs pour votre compte, et vos codes de secours actuels cesseront de fonctionner." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "C'est votre dernière clé d'accès. Une fois qu'elle sera supprimée, vous ne pourrez plus utiliser de clé d'accès comme deuxième facteur." @@ -34154,16 +34166,6 @@ msgstr "Le son est désactivé pour ce participant" msgid "This participant was deafened by moderators" msgstr "Les modérateurs ont désactivé le son de ce participant" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Cette demande de clé d'accès n'a pas pu être vérifiée. Fermez cette fenêtre et réessayez." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Cette demande de clé d'accès a expiré. Fermez cette fenêtre et réessayez." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Ceci supprime tous les domaines de confiance. Le message d'avertissement msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Cela supprime tous les raccourcis personnalisés et réactive tous les raccourcis intégrés. Cette action est irréversible." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Cette demande a expiré. Revenez en arrière et réessayez." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Ce lien de réinitialisation a expiré. Les liens de réinitialisation sont valides pendant 1 heure. Veuillez en demander un nouveau." @@ -34807,7 +34814,7 @@ msgstr "Transférer la propriété du groupe à {userName} ?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Transférer la propriété" @@ -34823,7 +34830,7 @@ msgstr "Propriété transférée à {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Traduire" @@ -34980,7 +34987,7 @@ msgstr "Essayez un autre nom de variable ou effacez la recherche." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Réessayer" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Réessayer" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Réessayez dans un instant." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Essayez de rechercher « thème », « notifications » ou « confidentialité »" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Essayer plutôt une clé de sécurité / clé d'accès" @@ -35088,7 +35095,7 @@ msgstr "Turc" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Désactiver" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Désactivez le partage audio pour cette source ou réessayez dans un instant." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Désactiver la caméra" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Désactivez la confidentialité de la diffusion avant de consulter les informations de connexion ou de sécurité du compte." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Activer" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Authentification à deux facteurs" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Authentification à deux facteurs" @@ -35288,7 +35295,7 @@ msgstr "Authentification à deux facteurs désactivée" msgid "Two-factor authentication enabled" msgstr "Authentification à deux facteurs activée" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "L'authentification à deux facteurs est activée" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Débloquer l'utilisateur" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Non classé" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Souligner les liens vers les sites web." #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Compris" @@ -35643,7 +35650,7 @@ msgstr "Solution de secours universelle. Qualité la plus basse, mais fonctionne #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Réactiver le micro sur tous les appareils" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Réactiver les notifications de la catégorie" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Réactiver les notifications des communautés" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Réactiver les notifications de la communauté" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Réactiver les notifications des MP" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Réactiver les notifications des favoris" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Désépingler" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Désépingler le message" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Désépingler ce message ?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "MP désépinglé" @@ -36193,6 +36200,11 @@ msgstr "Mettre à jour l'adresse e-mail" msgid "Update my status" msgstr "Mettre à jour mon statut" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Mettre à jour la clé d'accès" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Modifier la restriction temporaire" msgid "Update your own nickname." msgstr "Modifier votre surnom." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Mettre à jour votre clé d'accès" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Utilisez une fenêtre dédiée pour définir une date limite d'historiqu msgid "Use a different email address and verify it with a code." msgstr "Utilisez une autre adresse e-mail et vérifiez-la avec un code." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Utiliser une clé d'accès de gestionnaire de mots de passe" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Utiliser la valeur réelle" msgid "Use alternative method" msgstr "Utiliser une autre méthode" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Utiliser une application d’authentification pour générer les codes de l’authentification à deux facteurs" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "À utiliser uniquement si le contenu enfreint clairement les règles de {productName} et ne correspond pas aux catégories ci-dessus." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Utiliser des clés d'accès pour l'authentification à deux facteurs ?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Utiliser des clés d'accès pour se connecter sans mot de passe" @@ -36824,8 +36836,8 @@ msgstr "Utiliser l'activité vocale" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Utilisez le correcteur orthographique de votre système d'exploitation si disponible. Sinon, utilisez les dictionnaires intégrés de {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Utilisez votre clé d'accès" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Commandes utilisateur" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Débogage utilisateur" @@ -36972,7 +36984,7 @@ msgstr "Volume de l'utilisateur" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Vérification annulée" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Code de vérification" @@ -37185,7 +37197,7 @@ msgstr "E-mail de vérification envoyé. Vérifiez votre boîte de réception." msgid "Verification expired" msgstr "Vérification expirée" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Communauté vérifiée" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Vérifier" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Vérifier la connexion" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Vérifier l'e-mail" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formulaire de vérification d'identité" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Vérifiez que c'est bien vous" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Vérifiez votre adresse e-mail pour envoyer des demandes d'ami." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Vérifiez votre adresse e-mail avant d'ajouter une clé d'accès." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Vérifiez votre adresse e-mail avant d'ajouter une application d'authentification." @@ -37571,7 +37583,7 @@ msgstr "Voir et gérer les utilisateurs bannis." msgid "View and manage every webhook configured across your community." msgstr "Afficher et gérer tous les webhooks configurés pour votre communauté." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Afficher et gérer vos codes de secours pour la récupération de compte" @@ -37605,7 +37617,7 @@ msgstr "Voir le salon" msgid "View channel members" msgstr "Voir les membres du salon" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Afficher les codes" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Voir les forfaits" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Voir le profil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "salon vocal" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Salon vocal" @@ -38073,7 +38085,7 @@ msgstr "Annulée" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Veuillez patienter" msgid "Waiting for connection..." msgstr "En attente de connexion…" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "En attente de la clé d’accès…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Regarder" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Regarder la diffusion" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Aperçus des sites web" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Bon retour" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Vous ne faites partie d'aucune communauté pour le moment." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Vous avez bloqué {userName}. Vous ne pourrez pas lui envoyer de messages avant d’avoir débloqué cette personne." @@ -39101,6 +39113,11 @@ msgstr "Vous pouvez annuler la suppression dans les 14 jours" msgid "You can close this modal. The import will continue in the background." msgstr "Vous pouvez fermer cette fenêtre. L'importation se poursuivra en arrière-plan." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Vous pouvez fermer cet onglet" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Vous pouvez maintenant fermer cet onglet et retourner à l'application." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Vous ne pouvez pas vous envoyer de demande d'ami." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Vous ne pouvez pas envoyer de messages dans ce salon." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Vous devrez toujours terminer l'étape de l'e-mail." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Votre clé d'accès ne vous sera plus demandée après votre mot de passe. Votre application d'authentification restera votre deuxième facteur." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Vous devrez vous reconnecter sur tous les appareils déconnectés" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Vous aurez besoin de l'une de vos clés d'accès pour vous connecter sur un nouvel appareil. Si vous perdez toutes vos clés d'accès, vous risquez de perdre définitivement l'accès à votre compte. Des codes de secours seront enregistrés pour vous, afin qu'il vous reste un moyen d'accéder à votre compte." @@ -39918,12 +39935,12 @@ msgstr "Votre compte est trop récent pour envoyer des messages dans cette commu msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Votre demande de compte est en attente d’approbation. Vous pourrez vous connecter lorsqu’un admin l’aura approuvée." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Votre compte nécessite une authentification multifacteur, mais aucune méthode prise en charge n'est configurée sur cet appareil. Connectez-vous sur un appareil doté de votre application d'authentification ou de votre clé de sécurité, ou contactez l'assistance." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Votre compte ne sera plus protégé par l'authentification à deux facteurs lorsque vous vous connecterez avec votre mot de passe. Vous perdrez également vos permissions élevées dans les communautés qui exigent l'authentification à deux facteurs." @@ -39941,16 +39958,6 @@ msgstr "Votre action n'a pas pu être effectuée, car elle a été signalée par msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Votre candidature est en attente d’examen. Vous pouvez encore modifier les détails de votre fiche ou retirer votre candidature." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Votre navigateur a bloqué la fenêtre contextuelle de la clé d'accès. Autorisez les fenêtres contextuelles pour ce site et réessayez." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Votre navigateur ne prend pas en charge les clés d'accès sur ce domaine. Mettez à jour votre navigateur, ou connectez-vous avec votre mot de passe et votre code à deux facteurs." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Votre communauté doit compter au moins {minMemberCount, plural, one {# msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Votre carte de crédit a été vérifiée. Si elle est valide, les contenus pour adultes seront bientôt débloqués. Vous pouvez fermer cet onglet et revenir dans l’application." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Votre appareil vous demandera d'enregistrer une clé d'accès mise à jour pour {name}. Elle remplacera l'ancienne." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Votre appareil vous demandera d'enregistrer une clé d'accès mise à jour pour {name}. Utilisez le même téléphone ou la même clé de sécurité que vous venez d'utiliser." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Zoom avant" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/he/messages.po b/fluxer_app/src/features/i18n/locales/he/messages.po index c961af478..deed798ea 100644 --- a/fluxer_app/src/features/i18n/locales/he/messages.po +++ b/fluxer_app/src/features/i18n/locales/he/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {חבר} other {חברים}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# אזכור} two {# אזכורים} other {# אזכורים}}" @@ -2370,8 +2370,8 @@ msgstr "6 חודשים" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "קוד בן 6 ספרות" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "עקיפות חשבון ופרימיום" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "גישה לחשבון" @@ -2807,7 +2807,7 @@ msgstr "מנוי חודשי פעיל (ביטול מתוזמן)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "הוסף חשבון כדי להמשיך." msgid "Add an email and password to your account first." msgstr "הוסף/הוסיפי קודם אימייל וסיסמה לחשבון שלך." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "הוסף שכבת אבטחה נוספת לחשבונך" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "הוספת בוט ליעד" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "הוספת ערוץ" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "הוספת ריאקציות חדשות להודעות." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "הוספת הערה" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "הוספת עקיפה" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "הוספת מפתח גישה" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "הוספת ריאקציה" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "הוספה למילון" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "הוספה למועדפים" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "נוסף לקובצי ה-GIF המועדפים" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "נוסף למועדפים" @@ -3296,11 +3296,11 @@ msgstr "נוסף למועדפים" msgid "Added to saved media" msgstr "נוסף למדיה השמורה" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "נוסף: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "נוסף: {createdDate} • שימוש אחרון: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "כל השפות" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "כל ההודעות" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "כבר נמחק" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "כבר יש לך חשבון?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "זום של האפליקציה" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "רמת זום של האפליקציה" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "אשר" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "אשר את האפליקציה הזו מתוך אפליקציית {productName} שבה אתה כבר משתמש. אין צורך בסיסמה." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "האם למחוק את הקטגוריה \"{categoryName}\"? לא ניתן לבטל פעולה זו." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "האם למחוק את מפתח הגישה <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "האם למחוק את הקובץ המצורף הזה? לא ניתן ל msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "האם למחוק את הקהילה הזו? לא ניתן לבטל פעולה זו. כל הערוצים, ההודעות וההגדרות יימחקו לצמיתות." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "האם למחוק את מפתח הגישה הזה?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "בקש אישור לפני תחילת שיחות" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "בקשת מפתח גישה לאחר הסיסמה שלך בעת הכניסה" @@ -4690,7 +4690,7 @@ msgstr "קבצים מצורפים" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "שמע" @@ -4851,14 +4851,14 @@ msgstr "אימות" msgid "Authenticator" msgstr "אימות דו-שלבי" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "אפליקציית אימות" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "קוד אימות" @@ -4928,7 +4928,7 @@ msgstr "אפליקציות מורשות" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "לא זמין כרגע" msgid "Back" msgstr "חזרה" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "חזרה אל {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "חזרה לתפקידים" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "חזרה להגדרות" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "חזרה להתחברות" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "קוד גיבוי" @@ -5351,7 +5356,7 @@ msgstr "קוד גיבוי" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "הגעת למגבלת הסימניות" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "שיחות" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "מצלמה כבויה" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "מצלמה פועלת" @@ -6364,9 +6369,9 @@ msgstr "לא ניתן להעלות קבצים כאן" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "לא ניתן להעלות קבצים כאן" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "שינוי אימוג'י" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "שינוי כינוי של חבר" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "שינוי הכינוי שלי בקבוצה" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "שינוי כינוי" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "פעולות ערוץ" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "הערוץ נוסף למועדפים" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "ערוץ נוצר" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "ניפוי באגים בערוץ" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "הערוץ נמחק" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "רשומת ערוץ" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "הערוץ הוסר מהמועדפים" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "בחר את צבע ההדגשה של הפרופיל שלך" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "תבע את החשבון" @@ -7715,7 +7720,7 @@ msgstr "כדי לשלוח דיווחים, תבע את החשבון שלך ואמ msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "תבע את החשבון שלך על ידי הוספת אימייל וסיסמה. נשלח קוד אימות כדי לאשר את האימייל שלך לפני השלמת התהליך." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "תבע את החשבון שלך כדי לגשת לתכונות אבטחה כמו אימות דו-שלבי ומפתחות גישה." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "לנקות את ה-CSS המהיר?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "נקה חיפוש" @@ -8103,7 +8108,7 @@ msgstr "השכפול כבוי" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "סגירה" @@ -8160,11 +8165,9 @@ msgstr "סגירה לשורת התפריטים" msgid "Close to tray" msgstr "סגירה למגש המערכת" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "סגור חלון" @@ -8456,7 +8459,7 @@ msgstr "תקשורת" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "ניפוי באגים של קהילה" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "ברירת מחדל של קהילה" @@ -8577,7 +8580,7 @@ msgstr "רשומת חבר קהילה" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "חברי קהילה" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "רמת התראות קהילה" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "הגדרות התראות קהילה" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "השוואה" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "השלמת בדיקת התוכן למבוגרים" @@ -9093,7 +9096,7 @@ msgstr "חיבור: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "ניתן לפתוח תפריטי הקשר בלחיצה שמאלית (ע #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "המשך" msgid "Continue to checkout" msgstr "המשך לתשלום" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "המשך ליצירת מפתח גישה עבור {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "המשך לדווח על הקהילה" msgid "Continue to report user" msgstr "המשך לדווח על המשתמש" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "המשך עם מפתח גישה" @@ -9238,11 +9238,6 @@ msgstr "המשך עם מפתח גישה" msgid "Continue with SSO" msgstr "המשך עם SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "המשך עם מפתח הגישה שלך כדי להתחבר ל-{host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "מתאם פשיטות, התארגנויות או הטרדות נגד א #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "הועתק" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "העתקת מזהה קטגוריה" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "העתקת מזהה ערוץ" @@ -9421,12 +9416,12 @@ msgstr "העתקת קישור לערוץ" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "העתקת קוד" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "העתקת מזהה קהילה" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "העתקת כתובת ה-URL של ההזמנה" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "העתקת הודעה" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "העתקת מזהה הודעה" @@ -9570,7 +9565,7 @@ msgstr "העתקת מזהה הודעה" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "העתקת כתובת ה-URL של המדבקה" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "העתק את מפתח ההגדרה לאפליקציית האימות ש #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "העתקת מזהה משתמש" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "העתקת שם משתמש" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "לא ניתן היה למחוק את האפליקציה" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "לא ניתן היה למחוק את מפתח הגישה" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "לא ניתן היה לשלוח הזמנה" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "לא ניתן לשלוח הזמנה. יש לנסות שוב." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "לא ניתן היה לעדכן את עקיפת השתקת האזכורים" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "לא ניתן היה לעדכן את האימות הדו-שלבי באמצעות מפתח גישה" @@ -10206,6 +10201,11 @@ msgstr "לא ניתן היה לעדכן את הטקסט החלופי. יש לנ msgid "Couldn't update voice activity sharing right now" msgstr "לא ניתן היה לעדכן את שיתוף הפעילות הקולית כעת" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "לא ניתן היה לעדכן את מפתח הגישה שלך. יש לנסות שוב." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "לא ניתן היה להעלות את האווטאר" msgid "Couldn't upload banner" msgstr "לא ניתן היה להעלות את הבאנר" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "לא ניתן היה להשתמש במפתח הגישה שלך בחלון הקופץ. נסה שוב." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "לא הצלחנו לאמת את הקוד הזה. יש לנסות שוב. msgid "Couldn't verify the connection" msgstr "לא ניתן לאמת את החיבור" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "אימות באמצעות מפתח גישה נכשל. יש לנסות שוב." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "מרווח" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "יצירה" @@ -10298,7 +10293,7 @@ msgstr "צור קבוצה חדשה עם {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "יצירת אפליקציה" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "יצירת קטגוריה" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "יצירת ערוץ" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "יצירת קהילה" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "טקסט אזהרה מותאם אישית" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "מותאם אישית…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "ניפוי באגים" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "ניפוי באגים בערוץ" @@ -11164,7 +11159,7 @@ msgstr "ניפוי באגים בהודעה" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "ניפוי באגים של משתמש" @@ -11315,7 +11310,7 @@ msgstr "דלאוור" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "מחיקת {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "מחיקת חשבון" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "מחיקת אפליקציה" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "מחיקת קובץ מצורף" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "מחיקת מדיה" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "מחיקת הודעה" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "מחיקת הודעות של חברים אחרים. הצמדה נשלטת בנפרד." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "מחיקת מפתח גישה" @@ -11701,7 +11696,7 @@ msgstr "תאר במה עוסקת הקהילה שלך" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "תיאור" @@ -11966,7 +11961,7 @@ msgstr "מכשיר:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "קלט ישיר" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "הודעה פרטית" @@ -12050,7 +12045,7 @@ msgstr "תצוגה מקדימה של הודעות פרטיות" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "הודעות פרטיות" @@ -12077,14 +12072,14 @@ msgstr "העלאה ישירה פעילה" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "השבתה" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "השבתת חשבון" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "מנותק" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "קהילה ניתנת לגילוי" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "מזהה" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "סגירה" @@ -12477,7 +12472,7 @@ msgstr "הגדרות הודעות פרטיות ובקשות חברות" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "הצ'אט נסגר" @@ -12607,7 +12602,7 @@ msgstr "לא חוסם. אפשר לפתוח שוב מאוחר יותר." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "דומיין" @@ -12697,7 +12692,7 @@ msgstr "לחץ פעמיים על מישהו כדי לצפות בשידור של #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "הולנדית" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "לדוגמה: YubiKey, iPhone, מחשב עבודה" @@ -13092,7 +13087,7 @@ msgstr "עריכת הגדרות כלליות כמו שם, תיאור וסמל." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "עריכת קבוצה" @@ -13123,7 +13118,7 @@ msgstr "עריכת מדיה" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "עריכת הודעה" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "זכאי להחזר כספי עד {windowEndsOn}. פעולה זו גם תבטל את המינוי שלך באופן מיידי." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "אימייל" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "האימוג'י עודכן" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "אימוג'ים" @@ -13525,7 +13520,7 @@ msgstr "אין מועדפים" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "הפעלה" @@ -13680,7 +13675,7 @@ msgstr "הפעלת התראות דחיפה בנייד" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "הפעלת התראות" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "הפעל את האינטגרציות שהגדרת עבורן פרטי כניסה. מוצגים רק שירותים זמינים." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "הפעל אימות דו-שלבי" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "אנגלית (ארצות הברית)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "משופר" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "הזן אימייל חדש" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "הזן אחד מקודי הגיבוי שלך אם אינך יכול להשתמש במפתח הגישה שלך." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "הזן אחד מקודי הגיבוי שלך." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "הזן טקסט" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "הזן את הקוד בן {digitCount} הספרות מאפליקציית האימות שלך או קוד גיבוי." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "הזן את הקוד לפני שתמשיך." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "הזן את הקוד מאפליקציית האימות שלך." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "הזן את שמך" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "הזן את הסיסמה שלך." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "פג תוקף ב-<0>{expiredDate}. <1/> אינן פעילות עוד. ניתן להירשם מחדש בכל עת." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "תפוגה" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "השלמה אוטומטית של ביטויים" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "קטגוריות בורר הביטויים" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "הכנת האימוג'י נכשלה" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "עיבוד התמונה החתוכה נכשל. יש לנסות שוב." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "הפעלת ההתחברות באמצעות SSO נכשלה" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "החלפת החשבון נכשלה" @@ -15053,7 +15048,7 @@ msgstr "מועדפים" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "מועדפים" @@ -15268,6 +15263,11 @@ msgstr "סיום הגדרת החשבון" msgid "Finish account setup first" msgstr "יש לסיים קודם את הגדרת החשבון" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "סיים בלשונית החדשה. אם סגרת אותה, לחץ שוב על המשך עם מפתח גישה." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "שם תיקייה" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "הגדרות תיקייה" @@ -15479,7 +15479,7 @@ msgstr "בשבילי" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "בבדיקה הזו יש לשלוח לנו הודעת טקסט במקום לקבל הודעה מאיתנו." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "למען אבטחתך, יש לאמת את זהותך כדי להמשיך." @@ -15606,7 +15606,7 @@ msgstr "שכחתי סיסמה" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "שכחת את הסיסמה?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "חברים וקהילות קטנות בלבד" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "חברים של חברים" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "כללי" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "גרמניה" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "קבל את {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "כתובות URL של GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "קובצי GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "קיצור דרך גלובלי" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "חזרה" @@ -16374,6 +16374,11 @@ msgstr "חזרה" msgid "Go back and enter a valid email." msgstr "חזור והזן אימייל תקין." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "חזור אל {productName} כדי להמשיך." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "הסתר הערות תפוגה" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "הסתרת מועדפים" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "הסתר מושתקים" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "הסתר ערוצים מושתקים" @@ -17358,7 +17363,7 @@ msgstr "זהות" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "לא פעיל" @@ -17818,7 +17823,7 @@ msgstr "פרופיל לא הולם" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "תיבת דואר נכנס" @@ -17867,7 +17872,7 @@ msgstr "יש לכלול את מזהה הקהילה." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "תצוגה מקדימה של דף ההזמנה" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "הזמנת אנשים" @@ -18456,7 +18461,7 @@ msgstr "מזמין:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "הזמנות" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "הצטרף לשיחה" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "הצטרפות לקהילה" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "הצטרפות ל-{productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "קפיצה" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "להוציא משתמש מהקהילה הזו." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "הוצאת חבר" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "יציאה מהשיחה" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "יציאה מהקהילה" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "בניית קישור" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "הקישור הועתק ללוח" @@ -19859,8 +19864,8 @@ msgstr "תוכנה זדונית או קישורים מסוכנים" msgid "Malware, credential theft, or harmful files." msgstr "תוכנות זדוניות, גניבת פרטי כניסה או קבצים מזיקים." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "נהל" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "ניהול חשבונות" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "ניהול אפליקציות ומכשירים עם גישה לחשבון שלך" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "סמן את כל ערוצי תיבת הדואר הנכנס שלא נקראו כנקראים באופן מיידי, ללא בקשת אישור" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "סמן כנקרא" @@ -20021,7 +20026,7 @@ msgstr "סמן כספוילר" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "סמן כלא נקרא" @@ -20169,7 +20174,7 @@ msgstr "קהילה למבוגרים בלבד" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "תוכן למבוגרים" @@ -20315,7 +20320,7 @@ msgstr "מודד…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "חברים" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "חברים" @@ -20616,7 +20621,7 @@ msgstr "לאזכר את התפקיד הזה?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "אזכורים" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "פעולות מדיה נוספות" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "אפשרויות נוספות" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "השתקת שיחות" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "השתקת קטגוריה" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "השתקת קהילות" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "השתקת קהילה" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "השתקת צליל כניסה" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "השתקת מועדפים" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "השם חייב להכיל לפחות 2 תווים" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "מתן שם למפתח גישה" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "טופס מתן שם למפתח גישה" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "נברסקה" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "צריך חשבון?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "נבאדה" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "אף פעם" @@ -22276,7 +22281,7 @@ msgstr "החדשים ביותר תחילה" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "הבא" @@ -22905,7 +22910,7 @@ msgstr "לא נמצאו משתמשים" msgid "No verification is required." msgstr "אין צורך באימות." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "אין שיטות אימות זמינות" @@ -23038,11 +23043,13 @@ msgstr "לא נמצא" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "לא עכשיו" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "הערה (גלויה רק לך)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "כלום" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "הגדרות התראות מותאמות אישית" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "הגדרות התראות" @@ -23152,7 +23159,7 @@ msgstr "עוצמת קול התראות" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "כבוי" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "לא מחובר" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "אישור" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "אישור" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "מחוברים" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "מחובר" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "רק חברים עם ההרשאה \"{manageCommunityPermissionLabel}\" יכולים לשנות זאת." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "רק אזכורים" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "פתח את {labelText} בהגדרות" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "פתח את {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "הודעות פרטיות פתוחות" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "פתח צ'אט" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "פתח חשבונית {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "פתח קישור" @@ -23850,7 +23857,7 @@ msgstr "פתח מחליף מהיר" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "פתח הגדרות" @@ -23935,11 +23942,6 @@ msgstr "פתיחת סטודיו העיצוב בחלון קופץ" msgid "Open theme studio…" msgstr "פתח את סטודיו העיצוב…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "פתח חלון זה מתוך {productName} כדי להשתמש במפתח הגישה שלך." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "אפשרויות" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "מפתח גישה" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "שם מפתח גישה" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "מפתח הגישה עודכן" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "מפתחות גישה" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "מפתחות גישה דורשים חבילת macOS חתומה עם מזהה אפליקציה תקין. התקן את אפליקציית שולחן העבודה החתומה ונסה שוב." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "סיסמה" msgid "Password changed" msgstr "הסיסמה שונתה" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "ייתכן שמנהלי סיסמאות לא יציעו את מפתח הגישה שלך בכתובת האינטרנט הזו. במקום זאת, נסה בחלון קופץ בכתובת הישנה." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "הדבק את קישור ההודעה." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "מילון אישי" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "הערות אישיות" @@ -24885,7 +24887,7 @@ msgstr "הצמד צ'אט קבוצתי" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "הצמד הודעה" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "מוצמד" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "צ'אט מוצמד" @@ -25020,7 +25022,7 @@ msgstr "מנהל פלטפורמה" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "הפעל" @@ -25318,6 +25320,11 @@ msgstr "לחץ על מקש, לחצן עכבר או לחצן בקר משחק כד msgid "Press a shortcut…" msgstr "יש ללחוץ על קיצור דרך…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "לחץ על המשך כדי להשתמש במפתח הגישה שלך." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "שפה ראשית" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "ניווט ראשי" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "מדיניות פרטיות" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "הגדרות פרטיות" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "טיפ למקצוענים:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "המשך" @@ -26090,7 +26097,7 @@ msgstr "הגב באמצעות {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "יצירה מחדש תבטל את התוקף של האסימון הנוכחי. יש לעדכן כל קוד שמשתמש בערך הישן." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "הרשמה" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "מפתחות גישה רשומים" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "הסר באנר" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "הסר סימנייה" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "הסרה מהמילון" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "הסר מהמועדפים" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "הוסר מקובצי ה-GIF המועדפים" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "הוסר מהמועדפים" @@ -27032,7 +27039,7 @@ msgstr "הסרת הרשאות עלולה להגביל את התכונות של msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "הסרת פסק הזמן תאפשר ל-<0>{targetUserTag} לשלוח שוב הודעות, להגיב ולהצטרף לערוצי קול." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "שנה שם" @@ -27119,7 +27126,7 @@ msgstr "תגובות" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "השב" @@ -27209,7 +27216,7 @@ msgstr "דיווח על בעיה" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "דיווח על הודעה" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "דרוש אימות דו-שלבי לפעולות ניהול" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "דרישת מפתח גישה כשלב האימות השני" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "קישור האיפוס שגוי או שפג תוקפו" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "איפוס מצב הסכמה לתוכן למבוגרים" @@ -27880,7 +27887,7 @@ msgstr "חיפוש תמונה הפוך" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "חיפוש תמונה הפוך" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "בדיקה ואישור" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "בדוק אילו אפליקציות יכולות לגשת לחשבון שלך." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "סקירת רכישות קודמות ואפשרויות החזר כספי" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "עיין במכשירים המחוברים והתנתק מהסשנים שאינך מזהה." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "תפקיד עודכן" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "תפקידים" @@ -28261,7 +28268,7 @@ msgstr "רוויה" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "היקף" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "הרשאות" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "קורא מסך" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "חיפוש ערוצים, אנשים או קהילות" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "חיפוש חברים" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "חיפוש טקסט נבחר" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "חיפוש הגדרות" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "חיפוש הגדרות…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "אבטחה" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "תכונות אבטחה" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "מפתח אבטחה" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "מפתח אבטחה / מפתח גישה" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "מדיה רגישה" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "נשלח" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "סשן" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "תוקף הסשן עבור {identifier} פג. יש להיכנס שוב." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "קובע את העוצמה לכל אפקט קולי. הגדרות ספציפיות לצלילים בודדים יתעלמו מהגדרה זו." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "ההגדרות נפתחו." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "מקטעי הגדרות" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "סרגל צד" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "התחבר" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "היכנס כדי לקבל את המתנה שלך" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "התחבר דרך הדפדפן" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "היכנס באמצעות מפתח גישה" @@ -30666,7 +30673,7 @@ msgstr "התחבר באמצעות ספק ה-SSO של הארגון שלך." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "התנתקות" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "פרטי כניסה" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "תהליך ההתחברות" @@ -31189,7 +31196,7 @@ msgstr "לא ניתן להוסיף חלק מהמשתמשים" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "משהו השתבש" @@ -31374,7 +31381,7 @@ msgstr "עוצמת קול" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "צלילים" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "התחלת העלאת קבצים מצורפים ברגע שהם נוספים לשדה ההודעה" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "התחלת שיחת וידאו" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "התחלת שיחה קולית" @@ -31899,7 +31906,7 @@ msgstr "מדבקה" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "מדבקה: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "מדבקות" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "להפסיק לבטוח בכל הקישורים?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "להפסיק להשתמש במפתחות גישה לאימות דו-שלבי?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "השתקת כל אזכורי התפקידים" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "הסתר תצוגות מקדימות" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "ערוץ טקסט" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "ערוץ טקסט" @@ -33055,7 +33062,7 @@ msgstr "שלח/י לנו הודעה מהטלפון שלך" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "טקסט לדיבור" @@ -33119,6 +33126,11 @@ msgstr "הפעולה לא הושלמה. ייתכן שכבר עזבת חלק מה msgid "That did not go through. Nothing changed. Try again." msgstr "הפעולה לא בוצעה. שום דבר לא השתנה. נסה שוב." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "הפעולה לא הצליחה. יש לנסות שוב או לבטל." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "זה לא נראה כמו צבע תקין. נסה hex, rgb(), hsl(), או שם צבע CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "התמונה הזו לא ניתנת לשימוש. נסה קובץ אחר." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "התמונה הזו אינה תקינה. יש לנסות תמונה אחרת." @@ -34035,11 +34047,11 @@ msgstr "זהו התיאור של האפשרות השנייה" msgid "This is the third option description" msgstr "זהו התיאור של האפשרות השלישית" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "זהו מפתח הגישה האחרון שלך, ומפתחות גישה הם שלב האימות השני שלך. מחיקתו תשבית את האימות הדו-שלבי בחשבונך, וקודי הגיבוי הנוכחיים שלך יפסיקו לפעול." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "זהו מפתח הגישה האחרון שלך. לאחר שיימחק, לא תוכל להשתמש במפתח גישה כשלב האימות השני שלך." @@ -34154,16 +34166,6 @@ msgstr "השמע של משתתף זה מושתק" msgid "This participant was deafened by moderators" msgstr "השמע של משתתף זה הושתק על ידי מנהלים" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "לא ניתן היה לאמת את בקשת מפתח הגישה הזו. סגור חלון זה ונסה שוב." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "תם הזמן הקצוב לבקשת מפתח הגישה הזו. סגור את החלון הזה ונסה שוב." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "פעולה זו תסיר את כל הדומיינים המהימנים. msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "פעולה זו תסיר את כל קיצורי הדרך המותאמים אישית ותפעיל מחדש את כל קיצורי הדרך המובנים. לא ניתן לבטל פעולה זו." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "תוקף הבקשה הזו פג. יש לחזור ולנסות שוב." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "תוקף קישור האיפוס הזה פג. קישורי איפוס תקפים למשך שעה אחת. אנא בקש קישור חדש." @@ -34807,7 +34814,7 @@ msgstr "להעביר את בעלות הקבוצה אל {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "העברת בעלות" @@ -34823,7 +34830,7 @@ msgstr "הבעלות הועברה אל {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "תרגום" @@ -34980,7 +34987,7 @@ msgstr "נסה שם משתנה אחר או נקה את החיפוש." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "נסה שוב" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "נסה שוב" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "נסה שוב בעוד רגע." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "נסה לחפש משהו כמו \"עיצוב\", \"התראות\" או \"פרטיות\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "נסה במקום זאת מפתח אבטחה / מפתח גישה" @@ -35088,7 +35095,7 @@ msgstr "טורקית" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "כיבוי" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "כבה את שיתוף השמע עבור מקור זה או נסה שוב בעוד רגע." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "כיבוי מצלמה" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "כבה את פרטיות הסטרימינג לפני הצגת פרטי התחברות או אבטחת חשבון." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "הפעלה" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "אימות דו-שלבי" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "אימות דו-שלבי" @@ -35288,7 +35295,7 @@ msgstr "אימות דו-שלבי הושבת" msgid "Two-factor authentication enabled" msgstr "אימות דו-שלבי הופעל" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "אימות דו-שלבי מופעל" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "בטל חסימת משתמש" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "ללא קטגוריה" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "קו תחתון לקישורי אתרים" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "הבנתי" @@ -35643,7 +35650,7 @@ msgstr "חלופה אוניברסלית. האיכות הנמוכה ביותר, #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "בטל השתקה בכל המכשירים" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "בטל השתקת קטגוריה" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "בטל השתקת קהילות" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "בטל השתקת קהילה" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "בטל השתקת הודעות פרטיות" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "בטל השתקת מועדפים" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "הסר את ההצמדה" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "בטל הצמדת הודעה" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "להסיר את ההצמדה מההודעה הזו?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "צ'אט לא מוצמד" @@ -36193,6 +36200,11 @@ msgstr "עדכון אימייל" msgid "Update my status" msgstr "עדכן את הסטטוס שלי" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "עדכן מפתח גישה" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "עדכון פסק הזמן" msgid "Update your own nickname." msgstr "עדכן את הכינוי שלך." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "עדכן את מפתח הגישה שלך" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "השתמש בחלון ייעודי כדי לקבוע תאריך סף ל msgid "Use a different email address and verify it with a code." msgstr "השתמש בכתובת אימייל אחרת ואמת אותה באמצעות קוד." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "השתמש במפתח גישה ממנהל סיסמאות" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "השתמש בערך האמיתי" msgid "Use alternative method" msgstr "שימוש בשיטה חלופית" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "השתמש באפליקציית אימות כדי ליצור קודים לאימות דו-שלבי" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "יש להשתמש רק אם זה מפר באופן ברור את הכללים של {productName} ולא מתאים לאף אחת מהאפשרויות שלעיל." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "להשתמש במפתחות גישה לאימות דו-שלבי?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "שימוש במפתחות גישה כדי להיכנס ללא סיסמה" @@ -36824,8 +36836,8 @@ msgstr "שימוש בפעילות קולית" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "השתמש בבודק האיות של מערכת ההפעלה שלך כשזמין. אחרת, השתמש במילונים המובנים של {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "השתמש במפתח הגישה שלך" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "בקרות משתמש" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "ניפוי באגים של משתמש" @@ -36972,7 +36984,7 @@ msgstr "עוצמת שמע של משתמש" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "האימות בוטל" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "קוד אימות" @@ -37185,7 +37197,7 @@ msgstr "נשלחה הודעת אימות. יש לבדוק את תיבת הדוא msgid "Verification expired" msgstr "האימות פג תוקף" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "קהילה מאומתת" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "אימות" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "אימות חיבור" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "אימות אימייל" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "טופס אימות זהות" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "אימות זהותך" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "אמת את כתובת האימייל שלך כדי לשלוח בקשות חברות." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "יש לאמת את כתובת האימייל שלך לפני הוספת מפתח גישה." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "יש לאמת את כתובת האימייל שלך לפני הוספת אפליקציית אימות." @@ -37571,7 +37583,7 @@ msgstr "הצגה וניהול של משתמשים חסומים." msgid "View and manage every webhook configured across your community." msgstr "הצגה וניהול של כל ה-webhooks שהוגדרו בקהילה שלך." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "הצגה וניהול של קודי הגיבוי שלך לשחזור החשבון" @@ -37605,7 +37617,7 @@ msgstr "הצגת ערוץ" msgid "View channel members" msgstr "הצגת חברי ערוץ" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "הצגת קודים" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "הצגת מסלולים" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "הצגת פרופיל" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "ערוץ קולי" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "ערוץ קולי" @@ -38073,7 +38085,7 @@ msgstr "בוטל" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "המתן כאן" msgid "Waiting for connection..." msgstr "ממתין לחיבור..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "ממתין למפתח גישה…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "צפייה" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "צפה בשידור" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "תצוגות מקדימות של אתרים" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "ברוך שובך" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "אינך חבר באף קהילה כרגע." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "חסמת את {userName}. לא תוכל לשלוח הודעות אלא אם תבטל את החסימה." @@ -39101,6 +39113,11 @@ msgstr "באפשרותך לבטל את תהליך המחיקה בתוך 14 יו msgid "You can close this modal. The import will continue in the background." msgstr "אפשר לסגור את החלון הזה. הייבוא יימשך ברקע." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "אפשר לסגור את הלשונית הזו" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "כעת ניתן לסגור את הלשונית ולחזור לאפליקציה." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "אינך יכול לשלוח לעצמך בקשת חברות." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "אינך יכול לשלוח הודעות בערוץ זה." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "עדיין תצטרך להשלים את שלב האימייל." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "לא תתבקש עוד לספק מפתח גישה לאחר הסיסמה שלך. אפליקציית האימות תישאר שלב האימות השני שלך." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "יהיה עליך להתחבר מחדש בכל המכשירים שנותקו" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "תצטרך אחד ממפתחות הגישה שלך כדי להיכנס ממכשיר חדש. אם תאבד את כל מפתחות הגישה שלך, אתה עלול לאבד לצמיתות את הגישה לחשבונך. קודי גיבוי יישמרו עבורך, כך שעדיין תהיה לך דרך להיכנס." @@ -39918,12 +39935,12 @@ msgstr "החשבון שלך חדש מדי כדי לשלוח הודעות בקה msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "בקשת החשבון שלך ממתינה לאישור. אפשר להתחבר לאחר שמנהל יאשר אותה." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "החשבון שלך דורש אימות רב-שלבי, אך לא הוגדרו שיטות נתמכות במכשיר זה. היכנס באמצעות מכשיר עם אפליקציית האימות או מפתח האבטחה שלך, או פנה לתמיכה." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "החשבון שלך כבר לא יהיה מוגן באמצעות אימות דו-שלבי בעת כניסה עם הסיסמה שלך. כמו כן, תאבד את ההרשאות המוגברות שלך בקהילות שבהן נדרש אימות דו-שלבי." @@ -39941,16 +39958,6 @@ msgstr "הפעולה שלך לא הושלמה כי היא סומנה על ידי msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "הבקשה שלך ממתינה לבדיקה. עדיין באפשרותך לעדכן את פרטי הרישום או לבטל את הבקשה." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "הדפדפן שלך חסם את החלון הקופץ של מפתח הגישה. אפשר חלונות קופצים לאתר זה ונסה שוב." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "הדפדפן שלך אינו תומך במפתחות גישה בדומיין זה. עדכן את הדפדפן שלך, או התחבר באמצעות הסיסמה שלך וקוד האימות הדו-שלבי." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "הקהילה שלך צריכה לפחות {minMemberCount, plural, one { msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "כרטיס האשראי שלך נבדק. אם הכרטיס תקף, תוכן למבוגרים ייפתח בקרוב. באפשרותך לסגור את הכרטיסייה הזו ולחזור לאפליקציה." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "המכשיר שלך יבקש ממך לשמור מפתח גישה מעודכן עבור {name}. הוא יחליף את הישן." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "המכשיר שלך יבקש ממך לשמור מפתח גישה מעודכן עבור {name}. השתמש באותו טלפון או מפתח אבטחה שהרגע השתמשת בו." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "הגדלה" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "התקרבות" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/hi/messages.po b/fluxer_app/src/features/i18n/locales/hi/messages.po index 605b14799..627768750 100644 --- a/fluxer_app/src/features/i18n/locales/hi/messages.po +++ b/fluxer_app/src/features/i18n/locales/hi/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {सदस्य} other {सदस्य}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# मेंशन} other {# मेंशन}}" @@ -2370,8 +2370,8 @@ msgstr "6 महीने" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6 अंकों का कोड" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "अकाउंट और प्रीमियम ओवरराइड" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "अकाउंट एक्सेस" @@ -2807,7 +2807,7 @@ msgstr "सक्रिय मासिक सब्सक्राइबर ( #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "जारी रखने के लिए कोई अकाउंट msgid "Add an email and password to your account first." msgstr "पहले अपने अकाउंट में ईमेल और पासवर्ड जोड़ें।" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "अपने अकाउंट में सुरक्षा की एक और लेयर जोड़ें" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "बॉट को किसी गंतव्य में जोड़ें" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "चैनल जोड़ें" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "मैसेज पर नई रिएक्शन जोड़ें।" #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "नोट जोड़ें" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "ओवरराइड जोड़ें" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "पासकी जोड़ें" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "रिएक्शन जोड़ें" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "शब्दकोश में जोड़ें" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "पसंदीदा में जोड़ें" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "पसंदीदा GIF में जोड़ा गया" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "पसंदीदा में जोड़ा गया" @@ -3296,11 +3296,11 @@ msgstr "पसंदीदा में जोड़ा गया" msgid "Added to saved media" msgstr "सेव किए गए मीडिया में जोड़ा गया" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "जोड़ा गया: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "जोड़ा गया: {createdDate} • आखिरी बार इस्तेमाल किया गया: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "सभी भाषाएँ" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "सभी मैसेज" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "पहले ही हटा दिया गया है" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "पहले से ही अकाउंट है?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "ऐप ज़ूम" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "ऐप ज़ूम स्तर" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "स्वीकृत करें" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "जिस {productName} ऐप का आप पहले से इस्तेमाल करते हैं, उससे इस ऐप को मंज़ूरी दें। पासवर्ड की ज़रूरत नहीं है।" @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "क्या आप वाकई \"{categoryName}\" श्रेणी को मिटाना चाहते हैं? इसे पहले जैसा नहीं किया जा सकता।" #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "क्या आप वाकई पासकी <0>{0} मिटाना चाहते हैं?" @@ -4493,7 +4493,7 @@ msgstr "क्या आप वाकई इस अटैचमेंट को msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "क्या आप वाकई इस कम्युनिटी को मिटाना चाहते हैं? इस कार्रवाई को पहले जैसा नहीं किया जा सकता। सभी चैनल, मैसेज और सेटिंग्स हमेशा के लिए मिटा दिए जाएंगे।" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "क्या आप वाकई यह पासकी हटाना चाहते हैं?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "कॉल शुरू करने से पहले पूछें" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "साइन इन करते समय आपके पासवर्ड के बाद पासकी भी मांगी जाए" @@ -4690,7 +4690,7 @@ msgstr "अटैचमेंट" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "ऑडियो" @@ -4851,14 +4851,14 @@ msgstr "प्रमाणीकरण" msgid "Authenticator" msgstr "ऑथेंटिकेटर" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "ऑथेंटिकेटर ऐप" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "ऑथेंटिकेटर कोड" @@ -4928,7 +4928,7 @@ msgstr "अधिकृत ऐप्लिकेशन" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "अभी दूर हूँ" msgid "Back" msgstr "वापस" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "{productName} पर वापस जाएँ" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "रोल पर वापस जाएँ" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "सेटिंग्स पर वापस जाएँ" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "साइन-इन पर वापस जाएँ" @@ -5342,8 +5347,8 @@ msgstr "बैकस्पेस" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "बैकअप कोड" @@ -5351,7 +5356,7 @@ msgstr "बैकअप कोड" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "बुकमार्क की सीमा पूरी हो गई" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "कॉल" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "कैमरा बंद" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "कैमरा चालू" @@ -6364,9 +6369,9 @@ msgstr "यहां फ़ाइलें अपलोड नहीं की #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "यहां फ़ाइलें अपलोड नहीं की #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "इमोजी बदलें" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "दोस्त का उपनाम बदलें" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "ग्रुप में अपना उपनाम बदलें" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "उपनाम बदलें" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "चैनल ऐक्शन" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "चैनल पसंदीदा में जोड़ा गया" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "चैनल बनाया गया" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "चैनल डीबग" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "चैनल मिटा दिया गया" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "चैनल रिकॉर्ड" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "चैनल को पसंदीदा से हटाया गया" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "अपनी प्रोफ़ाइल का एक्सेंट रंग चुनें" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "अकाउंट क्लेम करें" @@ -7715,7 +7720,7 @@ msgstr "रिपोर्ट भेजने के लिए अपना अ msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "ईमेल और पासवर्ड जोड़कर अपना अकाउंट क्लेम करें। पूरा करने से पहले हम आपके ईमेल की पुष्टि करने के लिए एक वेरिफ़िकेशन कोड भेजेंगे।" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "दो-कारक प्रमाणीकरण और पासकी जैसे सुरक्षा फ़ीचर एक्सेस करने के लिए अपना अकाउंट क्लेम करें।" @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "क्विक CSS साफ़ करें?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "खोज साफ़ करें" @@ -8103,7 +8108,7 @@ msgstr "क्लोनिंग बंद है" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "बंद करें" @@ -8160,11 +8165,9 @@ msgstr "मेनू बार में बंद करें" msgid "Close to tray" msgstr "ट्रे में बंद करें" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "विंडो बंद करें" @@ -8456,7 +8459,7 @@ msgstr "कम्युनिकेशन" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "कम्युनिटी डीबग" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "कम्युनिटी डिफ़ॉल्ट" @@ -8577,7 +8580,7 @@ msgstr "कम्युनिटी सदस्य रिकॉर्ड" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "कम्युनिटी सदस्य" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "कम्युनिटी सूचना स्तर" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "कम्युनिटी सूचना सेटिंग" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "तुलना" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "वयस्क सामग्री की जाँच पूरी करें" @@ -9093,7 +9096,7 @@ msgstr "कनेक्शन: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "कॉन्टेक्स्ट मेन्यू को लेफ् #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "जारी रखें" msgid "Continue to checkout" msgstr "चेकआउट के लिए आगे बढ़ें" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "{host} के लिए पासकी बनाना जारी रखें" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "कम्युनिटी की रिपोर्ट करना msgid "Continue to report user" msgstr "यूज़र की रिपोर्ट करना जारी रखें" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "पासकी के साथ जारी रखें" @@ -9238,11 +9238,6 @@ msgstr "पासकी के साथ जारी रखें" msgid "Continue with SSO" msgstr "SSO के साथ जारी रखें" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "{host} में साइन इन करने के लिए अपनी पासकी के साथ जारी रखें" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "लोगों या कम्युनिटी के ख़िल #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "कॉपी किया गया" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "श्रेणी आईडी कॉपी करें" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "चैनल आईडी कॉपी करें" @@ -9421,12 +9416,12 @@ msgstr "चैनल लिंक कॉपी करें" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "कोड कॉपी करें" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "कम्युनिटी आईडी कॉपी करें" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "इनवाइट यूआरएल कॉपी करें" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "मैसेज कॉपी करें" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "मैसेज आईडी कॉपी करें" @@ -9570,7 +9565,7 @@ msgstr "मैसेज आईडी कॉपी करें" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "स्टिकर यूआरएल कॉपी करें" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "अपने ऑथेंटिकेटर ऐप में सेट #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "यूज़र आईडी कॉपी करें" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "यूज़रनेम कॉपी करें" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "ऐप्लिकेशन को हटाया नहीं जा सका" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "पासकी मिटाई नहीं जा सकी" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "इनवाइट भेजा नहीं जा सका" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "इनवाइट भेजा नहीं जा सका। फिर से कोशिश करें।" @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "मेंशन सप्रेशन बायपास अपडेट नहीं किया जा सका" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "पासकी दो-कारक प्रमाणीकरण अपडेट नहीं किया जा सका" @@ -10206,6 +10201,11 @@ msgstr "ऑल्ट टेक्स्ट अपडेट नहीं कि msgid "Couldn't update voice activity sharing right now" msgstr "वॉइस गतिविधि शेयरिंग अभी अपडेट नहीं की जा सकी" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "आपकी पासकी अपडेट नहीं हो सकी। फिर से कोशिश करें।" + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "अवतार अपलोड नहीं किया जा सक msgid "Couldn't upload banner" msgstr "बैनर अपलोड नहीं किया जा सका" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "आपकी पासकी का उपयोग पॉप-अप विंडो में नहीं किया जा सका। फिर से कोशिश करें।" - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "उस कोड को सत्यापित नहीं किय msgid "Couldn't verify the connection" msgstr "कनेक्शन सत्यापित नहीं किया जा सका" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "पासकी से पुष्टि नहीं हो पाई। फिर से कोशिश करें।" @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "आरामदायक" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "बनाएँ" @@ -10298,7 +10293,7 @@ msgstr "{userName} के साथ एक नया ग्रुप बना #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "ऐप्लिकेशन बनाएँ" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "श्रेणी बनाएँ" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "चैनल बनाएँ" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "कम्युनिटी बनाएँ" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "कस्टम चेतावनी टेक्स्ट" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "कस्टम…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "डीबग" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "चैनल डीबग करें" @@ -11164,7 +11159,7 @@ msgstr "मैसेज डीबग करें" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "यूज़र को डीबग करें" @@ -11315,7 +11310,7 @@ msgstr "डेलावेयर" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "{fileName} मिटाएँ" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "अकाउंट मिटाएँ" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "ऐप्लिकेशन मिटाएँ" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "अटैचमेंट मिटाएँ" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "मीडिया मिटाएँ" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "मैसेज मिटाएँ" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "अन्य सदस्यों के मैसेज मिटाएँ। पिन करना अलग से नियंत्रित होता है।" #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "पासकी मिटाएँ" @@ -11701,7 +11696,7 @@ msgstr "बताएं कि आपकी कम्युनिटी कि #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "विवरण" @@ -11966,7 +11961,7 @@ msgstr "डिवाइस:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "सीधा इनपुट" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "डायरेक्ट मैसेज" @@ -12050,7 +12045,7 @@ msgstr "डायरेक्ट मैसेज के प्रीव्यू #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "डायरेक्ट मैसेज" @@ -12077,14 +12072,14 @@ msgstr "सीधा अपलोड चालू है" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "बंद करें" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "अकाउंट निष्क्रिय करें" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "कनेक्शन कट गया" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "डिस्कवरेबल कम्युनिटी" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "डिस्क्रिमिनेटर" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "खारिज करें" @@ -12477,7 +12472,7 @@ msgstr "DM और फ्रेंड रिक्वेस्ट सेटिं #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM बंद" @@ -12607,7 +12602,7 @@ msgstr "ब्लॉक नहीं होगा। आप बाद में #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "डोमेन" @@ -12697,7 +12692,7 @@ msgstr "किसी की स्ट्रीम देखने के लि #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "डच" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "जैसे: YubiKey, iPhone, ऑफ़िस का कंप्यूटर" @@ -13092,7 +13087,7 @@ msgstr "नाम, विवरण और आइकॉन जैसी ग्ल #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "ग्रुप एडिट करें" @@ -13123,7 +13118,7 @@ msgstr "मीडिया एडिट करें" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "मैसेज एडिट करें" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "{windowEndsOn} तक रिफंड के लिए पात्र हैं। इससे आपकी सदस्यता तुरंत रद्द भी हो जाएगी।" #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "ईमेल" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "इमोजी अपडेट किया गया" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "इमोजी" @@ -13525,7 +13520,7 @@ msgstr "पसंदीदा खाली हैं" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "चालू करें" @@ -13680,7 +13675,7 @@ msgstr "मोबाइल पुश नोटिफ़िकेशन चाल #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "नोटिफ़िकेशन चालू करें" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "उन इंटीग्रेशन को चालू करें जिनके क्रेडेंशियल आपने कॉन्फ़िगर किए हैं। सिर्फ़ उपलब्ध सेवाएँ दिखाई जाती हैं।" #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "दो-कारक प्रमाणीकरण चालू करें" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "अंग्रेज़ी (यूएस)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "बेहतर" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "नया ईमेल डालें" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "अगर आप अपनी पासकी का इस्तेमाल नहीं कर सकते, तो अपने बैकअप कोड में से कोई एक डालें।" #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "अपने बैकअप कोड में से कोई एक डालें।" @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "टेक्स्ट डालें" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "अपने ऑथेंटिकेटर ऐप से {digitCount} अंकों वाला कोड या कोई बैकअप कोड डालें।" @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "जारी रखने से पहले कोड डालें।" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "अपने ऑथेंटिकेटर ऐप से कोड डालें।" @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "अपना नाम डालें" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "अपना पासवर्ड डालें।" @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "<0>{expiredDate} को समाप्त हो गया। <1/> अब सक्रिय नहीं हैं। आप किसी भी समय फिर से सदस्यता ले सकते हैं।" #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "समाप्त होगा" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "एक्सप्रेशन ऑटो-कम्प्लीट" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "एक्सप्रेशन पिकर श्रेणियाँ" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "इमोजी तैयार नहीं हो पाए" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "क्रॉप की गई इमेज प्रोसेस नहीं हो पाई। फिर से कोशिश करें।" @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "SSO शुरू नहीं हो पाया" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "अकाउंट नहीं बदला जा सका" @@ -15053,7 +15048,7 @@ msgstr "पसंदीदा" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "पसंदीदा" @@ -15268,6 +15263,11 @@ msgstr "अकाउंट सेटअप पूरा करें" msgid "Finish account setup first" msgstr "पहले अकाउंट सेटअप पूरा करें" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "नए टैब में पूरा करें। अगर आपने इसे बंद कर दिया है, तो 'पासकी के साथ जारी रखें' फिर से दबाएँ।" + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "फ़ोल्डर का नाम" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "फ़ोल्डर सेटिंग्स" @@ -15479,7 +15479,7 @@ msgstr "मेरे लिए" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "इस जाँच के लिए, आप हमसे मैसेज पाने के बजाय हमें एक टेक्स्ट मैसेज भेजेंगे।" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "आपकी सुरक्षा के लिए, आगे बढ़ने से पहले कृपया पुष्टि करें कि यह आप ही हैं।" @@ -15606,7 +15606,7 @@ msgstr "पासवर्ड भूल गए" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "पासवर्ड भूल गए?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "सिर्फ़ दोस्त और छोटी कम्युनिटी" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "दोस्तों के दोस्त" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "सामान्य" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "जर्मनी" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "{premiumProductName} पाएँ" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF यूआरएल" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "ग्लोबल शॉर्टकट" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "वापस जाएँ" @@ -16374,6 +16374,11 @@ msgstr "वापस जाएँ" msgid "Go back and enter a valid email." msgstr "वापस जाएं और मान्य ईमेल पता दर्ज करें।" +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "जारी रखने के लिए {productName} पर वापस जाएँ।" + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "एक्सपायरी फ़ुटनोट छिपाएं" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "पसंदीदा छिपाएं" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "म्यूट किए गए छिपाएं" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "म्यूट किए गए चैनल छिपाएं" @@ -17358,7 +17363,7 @@ msgstr "पहचान" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "निष्क्रिय" @@ -17818,7 +17823,7 @@ msgstr "अनुपयुक्त प्रोफ़ाइल" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "इनबॉक्स" @@ -17867,7 +17872,7 @@ msgstr "कम्युनिटी आईडी शामिल करें। #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "इनवाइट पेज का प्रीव्यू" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "लोगों को आमंत्रित करें" @@ -18456,7 +18461,7 @@ msgstr "आमंत्रित करने वाला:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "इनवाइट" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "कॉल में शामिल हों" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "कम्युनिटी में शामिल हों" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "{productName} से जुड़े" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "जाएं" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "इस कम्युनिटी से किसी सदस्य को किक करें।" #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "सदस्य को किक करें" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "कॉल छोड़ें" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "कम्युनिटी छोड़ें" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "लिंक बिल्डर" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "लिंक क्लिपबोर्ड पर कॉपी किया गया" @@ -19859,8 +19864,8 @@ msgstr "मैलवेयर या खतरनाक लिंक" msgid "Malware, credential theft, or harmful files." msgstr "मैलवेयर, क्रेडेंशियल चोरी या नुकसान पहुँचाने वाली फ़ाइलें।" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "प्रबंधित करें" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "अकाउंट प्रबंधित करें" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "अपने अकाउंट तक एक्सेस रखने वाले ऐप्स और डिवाइस प्रबंधित करें" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "सभी अपठित इनबॉक्स चैनलों को बिना पुष्टि पूछे तुरंत पढ़ा गया मार्क करें" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "पढ़ा गया मार्क करें" @@ -20021,7 +20026,7 @@ msgstr "स्पॉइलर मार्क करें" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "अपठित मार्क करें" @@ -20169,7 +20174,7 @@ msgstr "वयस्क कम्युनिटी" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "वयस्क सामग्री" @@ -20315,7 +20320,7 @@ msgstr "मापा जा रहा है…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "सदस्य" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "सदस्य" @@ -20616,7 +20621,7 @@ msgstr "इस रोल को मेंशन करें?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "मेंशन" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "ज़्यादा मीडिया ऐक्शन" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "ज़्यादा विकल्प" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "कॉल म्यूट करें" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "श्रेणी म्यूट करें" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "कम्युनिटी को म्यूट करें" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "कम्युनिटी म्यूट करें" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "एंट्रेंस साउंड म्यूट करें" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "पसंदीदा को म्यूट करें" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "नाम कम से कम 2 वर्णों का होना चाहिए" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "पासकी को नाम दें" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "पासकी को नाम देने का फ़ॉर्म" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "नेब्रास्का" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "अकाउंट चाहिए?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "नेवादा" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "कभी नहीं" @@ -22276,7 +22281,7 @@ msgstr "सबसे नया पहले" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "आगे" @@ -22905,7 +22910,7 @@ msgstr "कोई यूज़र नहीं मिला" msgid "No verification is required." msgstr "किसी वेरिफ़िकेशन की ज़रूरत नहीं है।" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "कोई वेरिफ़िकेशन तरीका उपलब्ध नहीं है" @@ -23038,11 +23043,13 @@ msgstr "नहीं मिला" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "अभी नहीं" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "नोट (सिर्फ़ आपको दिखेगा)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "कुछ नहीं" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "सूचना ओवरराइड" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "सूचना सेटिंग" @@ -23152,7 +23159,7 @@ msgstr "सूचना वॉल्यूम" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "बंद" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "ऑफ़लाइन" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "ठीक है" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "ठीक है" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "ऑनलाइन" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "ऑनलाइन" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "केवल \"{manageCommunityPermissionLabel}\" की अनुमति वाले सदस्य ही इसे बदल सकते हैं।" #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "सिर्फ़ मेंशन" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "सेटिंग्स में {labelText} खोलें" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "{landmarkName} खोलें" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "खुले डायरेक्ट मैसेज" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "DM खोलें" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "इनवॉइस {invoiceLabel} खोलें" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "लिंक खोलें" @@ -23850,7 +23857,7 @@ msgstr "क्विक स्विचर खोलें" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "सेटिंग्स खोलें" @@ -23935,11 +23942,6 @@ msgstr "थीम स्टूडियो पॉपआउट खोलें" msgid "Open theme studio…" msgstr "थीम स्टूडियो खोलें…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "अपनी पासकी का उपयोग करने के लिए इस विंडो को {productName} से खोलें।" - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "विकल्प" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "पासकी" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "पासकी का नाम" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "पासकी अपडेट की गई" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "पासकी" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "पासकी के लिए मान्य ऐप्लिकेशन आइडेंटिफ़ायर वाला साइन किया हुआ macOS बंडल ज़रूरी है। साइन किया हुआ डेस्कटॉप क्लाइंट इंस्टॉल करें और फिर से कोशिश करें।" #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "पासवर्ड" msgid "Password changed" msgstr "पासवर्ड बदल दिया गया" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "हो सकता है कि पासवर्ड मैनेजर इस वेब पते पर आपकी पासकी न दिखाएँ। इसके बजाय पुराने पते पर पॉप-अप विंडो में आज़माएँ।" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "मैसेज लिंक पेस्ट करें।" #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "व्यक्तिगत शब्दकोश" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "निजी नोट्स" @@ -24885,7 +24887,7 @@ msgstr "ग्रुप DM पिन करें" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "मैसेज पिन करें" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "पिन किया गया" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "पिन किया गया DM" @@ -25020,7 +25022,7 @@ msgstr "प्लेटफ़ॉर्म एडमिन" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "चलाएँ" @@ -25318,6 +25320,11 @@ msgstr "बाइंड करने के लिए कोई कुंजी, msgid "Press a shortcut…" msgstr "शॉर्टकट दबाएं…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "अपनी पासकी का उपयोग करने के लिए 'जारी रखें' दबाएँ।" + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "प्राथमिक भाषा" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "मुख्य नेविगेशन" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "गोपनीयता नीति" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "गोपनीयता सेटिंग्स" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "प्रो टिप:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "आगे बढ़ें" @@ -26090,7 +26097,7 @@ msgstr "{emojiShortcode} से रिएक्ट करें" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "फिर से जनरेट करने से मौजूदा टोकन अमान्य हो जाएगा। पुराने मान का इस्तेमाल करने वाले किसी भी कोड को अपडेट करें।" #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "रजिस्टर करें" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "रजिस्टर्ड पासकी" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "बैनर हटाएँ" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "बुकमार्क हटाएँ" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "शब्दकोश से हटाएँ" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "पसंदीदा से हटाएँ" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "पसंदीदा GIF से हटाया गया" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "पसंदीदा से हटाया गया" @@ -27032,7 +27039,7 @@ msgstr "अनुमतियाँ हटाने से बॉट की स msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "टाइमआउट हटाने से <0>{targetUserTag} को फिर से मैसेज भेजने, रिएक्ट करने और वॉइस चैनल में शामिल होने की अनुमति मिल जाएगी।" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "नाम बदलें" @@ -27119,7 +27126,7 @@ msgstr "जवाब" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "रिप्लाई करें" @@ -27209,7 +27216,7 @@ msgstr "समस्या की रिपोर्ट करें" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "मैसेज की रिपोर्ट करें" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "मॉडरेशन ऐक्शन के लिए 2FA ज़रूरी करें" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "अपने दूसरे कारक के रूप में पासकी ज़रूरी करें" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "रीसेट लिंक अमान्य है या उसकी समय-सीमा समाप्त हो गई है" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "वयस्क सामग्री सहमति स्थिति रीसेट करें" @@ -27880,7 +27887,7 @@ msgstr "रिवर्स इमेज" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "रिवर्स इमेज सर्च" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "समीक्षा करें और पुष्टि करें" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "उन ऐप्स की समीक्षा करें जिनके पास आपके अकाउंट का एक्सेस है।" @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "पिछली खरीदारी और रिफ़ंड के विकल्प देखें" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "साइन इन किए गए डिवाइस की समीक्षा करें और जिन सेशन को आप नहीं पहचानते, उनसे साइन आउट करें।" @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "रोल अपडेट किया गया" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "रोल" @@ -28261,7 +28268,7 @@ msgstr "सैचुरेशन" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "दायरा" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "अनुमतियाँ" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "स्क्रीन रीडर" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "चैनल, लोग या कम्युनिटी खोजें" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "दोस्त खोजें" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "चुने हुए टेक्स्ट को खोजें" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "सेटिंग्स खोजें" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "सेटिंग्स खोजें…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "सुरक्षा" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "सुरक्षा सुविधाएं" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "सुरक्षा कुंजी" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "सुरक्षा कुंजी / पासकी" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "संवेदनशील मीडिया" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "भेजा गया" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "सेशन" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "{identifier} के लिए सेशन समाप्त हो गया है। फिर से साइन इन करें।" @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "हर ध्वनि प्रभाव के लिए लेवल सेट करता है। अलग-अलग ध्वनि के ओवरराइड इसे अनदेखा करते हैं।" #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "सेटिंग्स खुल गईं।" #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "सेटिंग्स सेक्शन" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "साइडबार" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "साइन इन करें" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "अपना उपहार पाने के लिए साइन इन करें" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "ब्राउज़र से साइन इन करें" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "पासकी से साइन इन करें" @@ -30666,7 +30673,7 @@ msgstr "अपने संगठन के सिंगल साइन-ऑन #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "साइन आउट करें" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "साइन-इन विवरण" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "साइन-इन फ़्लो" @@ -31189,7 +31196,7 @@ msgstr "कुछ यूज़र को जोड़ा नहीं जा स #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "कुछ गड़बड़ हो गई" @@ -31374,7 +31381,7 @@ msgstr "साउंड वॉल्यूम" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "साउंड" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "मैसेज इनपुट में जोड़े जाते ही अटैचमेंट अपलोड करना शुरू करें" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "वीडियो कॉल शुरू करें" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "वॉइस कॉल शुरू करें" @@ -31899,7 +31906,7 @@ msgstr "स्टिकर" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "स्टिकर: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "स्टिकर" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "सभी लिंक पर भरोसा करना बंद करें?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "दो-कारक प्रमाणीकरण के लिए पासकी का उपयोग बंद करें?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "सभी रोल मेंशन की सूचनाएँ बंद करें" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "एम्बेड छिपाएँ" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "टेक्स्ट चैनल" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "टेक्स्ट चैनल" @@ -33055,7 +33062,7 @@ msgstr "अपने फ़ोन से हमें टेक्स्ट क #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "टेक्स्ट-टू-स्पीच" @@ -33119,6 +33126,11 @@ msgstr "यह पूरा नहीं हुआ। हो सकता है msgid "That did not go through. Nothing changed. Try again." msgstr "यह नहीं हो पाया। कुछ भी नहीं बदला। फिर से कोशिश करें।" +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "यह नहीं हो पाया। फिर से कोशिश करें या रद्द करें।" + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "यह कोई मान्य रंग नहीं लग रहा है। हेक्स, rgb(), hsl() या CSS रंग का नाम आज़माएँ।" @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "वह इमेज इस्तेमाल नहीं की जा सकी। कोई दूसरी फ़ाइल आज़माएँ।" #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "यह इमेज अमान्य है। कोई दूसरी इमेज आज़माएँ।" @@ -34035,11 +34047,11 @@ msgstr "यह दूसरा विकल्प विवरण है" msgid "This is the third option description" msgstr "यह तीसरा विकल्प विवरण है" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "यह आपकी आखिरी पासकी है और पासकी ही आपका दूसरा कारक है। इसे मिटाने से आपके अकाउंट का दो-कारक प्रमाणीकरण बंद हो जाएगा, और आपके मौजूदा बैकअप कोड काम करना बंद कर देंगे।" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "यह आपकी आखिरी पासकी है। इसके मिट जाने के बाद आप पासकी का उपयोग अपने दूसरे कारक के रूप में नहीं कर पाएँगे।" @@ -34154,16 +34166,6 @@ msgstr "इस प्रतिभागी को डीफ़ेन किय msgid "This participant was deafened by moderators" msgstr "इस प्रतिभागी को मॉडरेटर ने डीफ़ेन किया है" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "यह पासकी अनुरोध सत्यापित नहीं किया जा सका। इस विंडो को बंद करें और फिर से कोशिश करें।" - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "यह पासकी अनुरोध टाइम आउट हो गया। इस विंडो को बंद करें और फिर से कोशिश करें।" - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "यह सभी भरोसेमंद डोमेन हटा द msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "इससे सभी कस्टम शॉर्टकट हट जाएंगे और सभी बिल्ट-इन शॉर्टकट फिर से चालू हो जाएंगे। इसे पहले जैसा नहीं किया जा सकता।" +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "इस अनुरोध की समय-सीमा समाप्त हो गई है। वापस जाएँ और फिर से कोशिश करें।" + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "यह रीसेट लिंक समाप्त हो गया है। रीसेट लिंक 1 घंटे तक चलते हैं। कृपया नया लिंक मांगें।" @@ -34807,7 +34814,7 @@ msgstr "ग्रुप का स्वामित्व {userName} को ट #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "स्वामित्व ट्रांसफ़र करें" @@ -34823,7 +34830,7 @@ msgstr "स्वामित्व {0} को ट्रांसफ़र क #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "अनुवाद करें" @@ -34980,7 +34987,7 @@ msgstr "कोई दूसरा वैरिएबल नाम आज़म #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "फिर से कोशिश करें" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "फिर से कोशिश करें" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "कुछ देर में फिर से कोशिश करें।" @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "\"थीम\", \"सूचनाएं\" या \"गोपनीयता\" जैसा कुछ खोजकर देखें" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "इसके बजाय सुरक्षा कुंजी/पासकी आज़माएँ" @@ -35088,7 +35095,7 @@ msgstr "तुर्की" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "बंद करें" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "इस स्रोत के लिए ऑडियो शेयरिंग बंद करें या थोड़ी देर बाद फिर से प्रयास करें।" #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "कैमरा बंद करें" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "लॉगिन या अकाउंट सुरक्षा विवरण देखने से पहले स्ट्रीमिंग गोपनीयता बंद करें।" #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "चालू करें" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "दो कारक" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "दो-कारक प्रमाणीकरण" @@ -35288,7 +35295,7 @@ msgstr "दो-कारक प्रमाणीकरण बंद किय msgid "Two-factor authentication enabled" msgstr "दो-कारक प्रमाणीकरण चालू किया गया" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "दो-कारक प्रमाणीकरण चालू है" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "यूज़र को अनब्लॉक करें" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "बिना श्रेणी" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "वेबसाइट लिंक को रेखांकित करें" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "समझ गया" @@ -35643,7 +35650,7 @@ msgstr "यूनिवर्सल फ़ॉलबैक। सबसे कम #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "सभी डिवाइस अनम्यूट करें" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "श्रेणी को अनम्यूट करें" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "कम्युनिटी को अनम्यूट करें" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "कम्युनिटी को अनम्यूट करें" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "DM अनम्यूट करें" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "पसंदीदा को अनम्यूट करें" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "अनपिन करें" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "मैसेज अनपिन करें" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "इस मैसेज को अनपिन करें?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "अनपिन किया गया DM" @@ -36193,6 +36200,11 @@ msgstr "ईमेल अपडेट करें" msgid "Update my status" msgstr "अपना स्टेटस अपडेट करें" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "पासकी अपडेट करें" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "टाइमआउट अपडेट करें" msgid "Update your own nickname." msgstr "अपना उपनाम अपडेट करें।" +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "अपनी पासकी अपडेट करें" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "जिन सदस्यों के पास {readMessageHistoryPerm msgid "Use a different email address and verify it with a code." msgstr "किसी दूसरे ईमेल पते का इस्तेमाल करें और उसे कोड से वेरिफ़ाई करें।" -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "पासवर्ड मैनेजर से पासकी का उपयोग करें" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "वास्तविक मान का उपयोग करें" msgid "Use alternative method" msgstr "कोई और तरीका इस्तेमाल करें" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "दो-कारक प्रमाणीकरण के लिए कोड जनरेट करने के लिए एक ऑथेंटिकेटर ऐप का उपयोग करें" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "इसका उपयोग तभी करें जब यह स्पष्ट रूप से {productName} के नियमों का उल्लंघन करता हो और ऊपर दिए गए विकल्पों में फिट न होता हो।" #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "दो-कारक प्रमाणीकरण के लिए पासकी का उपयोग करें?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "पासवर्ड के बिना साइन इन करने के लिए पासकी का उपयोग करें" @@ -36824,8 +36836,8 @@ msgstr "वॉइस गतिविधि का इस्तेमाल क msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "उपलब्ध होने पर अपने ऑपरेटिंग सिस्टम के स्पेलचेकर का उपयोग करें। अन्यथा, {productName} की इन-ऐप डिक्शनरी का उपयोग करें।" -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "अपनी पासकी का उपयोग करें" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "यूज़र कंट्रोल" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "यूज़र डीबग" @@ -36972,7 +36984,7 @@ msgstr "यूज़र का वॉल्यूम" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "वेरिफ़िकेशन रद्द किया गया" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "वेरिफ़िकेशन कोड" @@ -37185,7 +37197,7 @@ msgstr "वेरिफ़िकेशन ईमेल भेजा गया msgid "Verification expired" msgstr "वेरिफ़िकेशन की समय-सीमा खत्म हो गई है" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "वेरिफ़ाइड कम्युनिटी" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "वेरिफ़ाई करें" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "कनेक्शन वेरिफ़ाई करें" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "ईमेल वेरिफ़ाई करें" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "पहचान वेरिफ़ाई करने का फ़ॉर्म" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "पुष्टि करें कि यह आप ही हैं" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "फ्रेंड रिक्वेस्ट भेजने के लिए अपना ईमेल पता वेरिफ़ाई करें।" #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "पासकी जोड़ने से पहले अपना ईमेल वेरिफ़ाई करें।" #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "ऑथेंटिकेटर ऐप जोड़ने से पहले अपना ईमेल वेरिफ़ाई करें।" @@ -37571,7 +37583,7 @@ msgstr "बैन किए गए यूज़र देखें और प् msgid "View and manage every webhook configured across your community." msgstr "अपनी कम्युनिटी में कॉन्फ़िगर किए गए सभी वेबहुक देखें और प्रबंधित करें।" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "अकाउंट रिकवरी के लिए अपने बैकअप कोड देखें और प्रबंधित करें" @@ -37605,7 +37617,7 @@ msgstr "चैनल देखें" msgid "View channel members" msgstr "चैनल के सदस्य देखें" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "कोड देखें" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "प्लान देखें" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "प्रोफ़ाइल देखें" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "वॉइस चैनल" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "वॉइस चैनल" @@ -38073,7 +38085,7 @@ msgstr "रद्द किया गया" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "यहां इंतज़ार करें" msgid "Waiting for connection..." msgstr "कनेक्शन का इंतज़ार हो रहा है..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "पासकी का इंतज़ार हो रहा है…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "देखें" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "स्ट्रीम देखें" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "वेबसाइट प्रीव्यू" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "वापस आपका स्वागत है" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "आप अभी किसी भी कम्युनिटी में नहीं हैं।" #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "आपने {userName} को ब्लॉक किया है। आप उन्हें तब तक मैसेज नहीं भेज पाएंगे जब तक आप उन्हें अनब्लॉक नहीं करते।" @@ -39101,6 +39113,11 @@ msgstr "आप 14 दिनों के अंदर डिलीट करन msgid "You can close this modal. The import will continue in the background." msgstr "आप इस मोडल को बंद कर सकते हैं। इंपोर्ट बैकग्राउंड में जारी रहेगा।" +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "आप इस टैब को बंद कर सकते हैं" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "अब आप यह टैब बंद करके ऐप पर वापस जा सकते हैं।" @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "आप खुद को फ्रेंड रिक्वेस्ट नहीं भेज सकते।" #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "आप इस चैनल में मैसेज नहीं भेज सकते।" @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "आपको अभी भी ईमेल वाला चरण पूरा करना होगा।" #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "अब आपसे पासवर्ड के बाद पासकी नहीं मांगी जाएगी। आपका ऑथेंटिकेटर ऐप आपका दूसरा कारक बना रहेगा।" @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "आपको सभी साइन-आउट किए गए डिवाइस पर फिर से साइन इन करना होगा" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "नए डिवाइस पर साइन इन करने के लिए आपको अपनी पासकी में से कोई एक चाहिए होगी। अगर आप अपनी सभी पासकी खो देते हैं, तो आप अपने अकाउंट से लॉक आउट हो सकते हैं। आपके बैकअप कोड सेव कर दिए जाएँगे, ताकि अंदर आने का एक रास्ता आपके पास बना रहे।" @@ -39918,12 +39935,12 @@ msgstr "इस कम्युनिटी में मैसेज भेज msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "आपके अकाउंट का अनुरोध मंज़ूरी के इंतज़ार में है। एडमिन के मंज़ूर करने के बाद आप साइन इन कर सकेंगे।" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "आपके अकाउंट के लिए मल्टी-फ़ैक्टर प्रमाणीकरण ज़रूरी है, लेकिन इस डिवाइस पर कोई भी समर्थित तरीका सेट अप नहीं है। अपने ऑथेंटिकेटर ऐप या सुरक्षा कुंजी वाले डिवाइस पर साइन इन करें या सहायता से संपर्क करें।" #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "पासवर्ड से साइन इन करते समय आपके अकाउंट को दो-कारक प्रमाणीकरण की सुरक्षा नहीं मिलेगी। जिन कम्युनिटी में दो-कारक प्रमाणीकरण ज़रूरी है, उनमें आपकी बढ़ी हुई अनुमतियाँ भी चली जाएँगी।" @@ -39941,16 +39958,6 @@ msgstr "आपकी कार्रवाई पूरी नहीं हो msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "आपका आवेदन समीक्षा के लिए लंबित है। आप अभी भी अपनी लिस्टिंग का विवरण अपडेट कर सकते हैं या आवेदन वापस ले सकते हैं।" -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "आपके ब्राउज़र ने पासकी पॉप-अप विंडो को ब्लॉक कर दिया है। इस साइट के लिए पॉप-अप की अनुमति दें और फिर से कोशिश करें।" - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "आपका ब्राउज़र इस डोमेन पर पासकी का समर्थन नहीं करता है। अपना ब्राउज़र अपडेट करें, या अपने पासवर्ड और दो-कारक कोड से साइन इन करें।" - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "डिस्कवरी में लिस्ट होने के msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "आपके क्रेडिट कार्ड की जाँच कर ली गई है। अगर कार्ड मान्य है, तो जल्द ही वयस्क सामग्री अनलॉक हो जाएगी। आप इस टैब को बंद करके ऐप पर वापस जा सकते हैं।" +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "आपका डिवाइस आपसे {name} के लिए एक अपडेटेड पासकी सेव करने के लिए कहेगा। यह पुरानी पासकी की जगह ले लेगी।" + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "आपका डिवाइस आपसे {name} के लिए एक अपडेटेड पासकी सेव करने के लिए कहेगा। वही फ़ोन या सुरक्षा कुंजी इस्तेमाल करें जो आपने अभी इस्तेमाल की है।" + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "ज़ूम" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "ज़ूम इन करें" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/hr/messages.po b/fluxer_app/src/features/i18n/locales/hr/messages.po index 3df70e03a..5a0c0ef67 100644 --- a/fluxer_app/src/features/i18n/locales/hr/messages.po +++ b/fluxer_app/src/features/i18n/locales/hr/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {član} few {člana} other {članova}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# spominjanje} few {# spominjanja} other {# spominjanja}}" @@ -2370,8 +2370,8 @@ msgstr "6 mjeseci" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-znamenkasti kod" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Nadjačavanja računa i premium značajki" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Pristup računu" @@ -2807,7 +2807,7 @@ msgstr "Aktivni mjesečni pretplatnik (otkazivanje zakazano)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Dodajte račun za nastavak." msgid "Add an email and password to your account first." msgstr "Prvo dodajte e-poštu i lozinku svom računu." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Dodajte još jedan sloj sigurnosti svom računu" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Dodajte bota na odredište" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Dodaj kanal" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Dodaj nove reakcije na poruke." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Dodaj bilješku" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Dodaj nadjačavanje" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Dodaj pristupni ključ" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Dodaj reakciju" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Dodaj u rječnik" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Dodaj u favorite" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Dodano u omiljene GIF-ove" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Dodano u favorite" @@ -3296,11 +3296,11 @@ msgstr "Dodano u favorite" msgid "Added to saved media" msgstr "Dodano u spremljene medije" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Dodano: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Dodano: {createdDate} • zadnje korišteno: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Svi jezici" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Sve poruke" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Već izbrisano" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Već imate račun?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Zumiranje aplikacije" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Razina zumiranja aplikacije" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Odobri" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Odobrite ovu aplikaciju iz aplikacije {productName} koju već koristite. Lozinka nije potrebna." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Jeste li sigurni da želite izbrisati kategoriju \"{categoryName}\"? Ova radnja se ne može poništiti." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Jeste li sigurni da želite izbrisati pristupni ključ <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Jeste li sigurni da želite izbrisati ovaj privitak? Ova se radnja ne mo msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Jeste li sigurni da želite izbrisati ovu zajednicu? Ova se radnja ne može poništiti. Svi kanali, poruke i postavke bit će trajno izbrisani." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Jeste li sigurni da želite izbrisati ovaj pristupni ključ?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Pitaj prije pokretanja poziva" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Zatraži pristupni ključ nakon lozinke prilikom prijave" @@ -4690,7 +4690,7 @@ msgstr "Privici" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Zvuk" @@ -4851,14 +4851,14 @@ msgstr "Autentifikacija" msgid "Authenticator" msgstr "Autentifikator" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Aplikacija za autentifikaciju" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Kôd za autentifikaciju" @@ -4928,7 +4928,7 @@ msgstr "Autorizirane aplikacije" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Trenutno odsutan" msgid "Back" msgstr "Natrag" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Natrag na {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Natrag na uloge" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Natrag na postavke" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Natrag na prijavu" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Rezervni kod" @@ -5351,7 +5356,7 @@ msgstr "Rezervni kod" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Dosegnuto ograničenje oznaka" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Pozivi" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera isključena" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera uključena" @@ -6364,9 +6369,9 @@ msgstr "Ovdje nije moguće učitati datoteke" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Ovdje nije moguće učitati datoteke" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Promijeni emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Promijeni nadimak prijatelja" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Promijeni moj nadimak u grupi" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Promijeni nadimak" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Radnje kanala" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanal dodan u favorite" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanal izrađen" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Otklanjanje pogrešaka kanala" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanal izbrisan" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Zapis kanala" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanal uklonjen iz favorita" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Odaberite boju naglaska profila" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Preuzmi račun" @@ -7715,7 +7720,7 @@ msgstr "Preuzmite svoj račun i potvrdite e-poštu kako biste mogli slati prijav msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Preuzmite svoj račun dodavanjem e-pošte i lozinke. Poslat ćemo vam kod za provjeru kako bismo potvrdili vašu e-poštu prije dovršetka." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Preuzmite svoj račun za pristup sigurnosnim značajkama kao što su dvostruka provjera autentičnosti i pristupni ključevi." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Očistiti brzi CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Očisti pretragu" @@ -8103,7 +8108,7 @@ msgstr "Kloniranje je isključeno" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Zatvori" @@ -8160,11 +8165,9 @@ msgstr "Zatvori u traku izbornika" msgid "Close to tray" msgstr "Zatvori u područje obavijesti" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Zatvori prozor" @@ -8456,7 +8459,7 @@ msgstr "Komunikacija" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Otklanjanje pogrešaka zajednice" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Zadano za zajednicu" @@ -8577,7 +8580,7 @@ msgstr "Zapis člana zajednice" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Članovi zajednice" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Razina obavijesti zajednice" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Postavke obavijesti zajednice" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Usporedba" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Dovršite provjeru sadržaja za odrasle" @@ -9093,7 +9096,7 @@ msgstr "Veza: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Kontekstni izbornici mogu se otvoriti lijevim klikom (na gumbe) ili desn #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Nastavi" msgid "Continue to checkout" msgstr "Nastavi na plaćanje" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Nastavi s izradom pristupnog ključa za {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Nastavi s prijavom zajednice" msgid "Continue to report user" msgstr "Nastavi s prijavom korisnika" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Nastavi s pristupnim ključem" @@ -9238,11 +9238,6 @@ msgstr "Nastavi s pristupnim ključem" msgid "Continue with SSO" msgstr "Nastavi sa SSO-om" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Nastavi sa svojim pristupnim ključem za prijavu na {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Koordinira napade, hajke ili uznemiravanje ljudi ili zajednica." #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Kopirano" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kopiraj ID kategorije" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kopiraj ID kanala" @@ -9421,12 +9416,12 @@ msgstr "Kopiraj poveznicu kanala" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Kopiraj kod" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Kopiraj ID zajednice" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Kopiraj URL pozivnice" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Kopiraj poruku" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Kopiraj ID poruke" @@ -9570,7 +9565,7 @@ msgstr "Kopiraj ID poruke" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Kopiraj URL naljepnice" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Kopirajte ključ za postavljanje u svoju aplikaciju za autentifikaciju." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Kopiraj korisnički ID" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Kopiraj korisničko ime" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Nije moguće izbrisati aplikaciju" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Nije moguće izbrisati pristupni ključ" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Nije moguće poslati pozivnicu" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Nije moguće poslati pozivnicu. Pokušajte ponovno." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Nije moguće ažurirati zaobilaženje blokade spominjanja" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Nije moguće ažurirati dvostruku provjeru autentičnosti pristupnim ključem" @@ -10206,6 +10201,11 @@ msgstr "Nije moguće ažurirati zamjenski tekst. Pokušajte ponovno." msgid "Couldn't update voice activity sharing right now" msgstr "Trenutačno nije moguće ažurirati dijeljenje glasovne aktivnosti" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Nije moguće ažurirati vaš pristupni ključ. Pokušajte ponovno." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Nije moguće učitati avatar" msgid "Couldn't upload banner" msgstr "Nije moguće učitati naslovnu sliku" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Nije bilo moguće upotrijebiti vaš pristupni ključ u skočnom prozoru. Pokušajte ponovno." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Nije moguće potvrditi taj kôd. Pokušajte ponovno." msgid "Couldn't verify the connection" msgstr "Nije moguće provjeriti vezu" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Provjera s pristupnim ključem nije uspjela. Pokušajte ponovno." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Ugodno" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Stvori" @@ -10298,7 +10293,7 @@ msgstr "Stvori novu grupu s korisnikom {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Stvori aplikaciju" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Stvori kategoriju" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Stvori kanal" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Stvori zajednicu" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Prilagođeni tekst upozorenja" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Prilagođeno…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Otklanjanje pogrešaka" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Otklanjanje pogrešaka kanala" @@ -11164,7 +11159,7 @@ msgstr "Otklanjanje pogrešaka poruke" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Otklanjanje pogrešaka korisnika" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Izbriši {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Izbriši račun" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Izbriši aplikaciju" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Izbriši privitak" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Izbriši medij" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Izbriši poruku" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Brisanje poruka drugih članova. Prikvačivanje se kontrolira zasebno." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Izbriši pristupni ključ" @@ -11701,7 +11696,7 @@ msgstr "Opišite o čemu se radi u vašoj zajednici" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Opis" @@ -11966,7 +11961,7 @@ msgstr "Uređaj:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Izravan unos" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Izravna poruka" @@ -12050,7 +12045,7 @@ msgstr "Pretpregledi izravnih poruka" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Izravne poruke" @@ -12077,14 +12072,14 @@ msgstr "Izravan prijenos aktivan" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Onemogući" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Deaktiviraj račun" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Prekinuta veza" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Zajednica u Otkrivanju" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Diskriminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Odbaci" @@ -12477,7 +12472,7 @@ msgstr "Postavke izravnih poruka i zahtjeva za prijateljstvo" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Izravna poruka zatvorena" @@ -12607,7 +12602,7 @@ msgstr "Ne blokira. Možete ga kasnije ponovno otvoriti." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domena" @@ -12697,7 +12692,7 @@ msgstr "Dvaput kliknite na nekoga da biste gledali njegov stream." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Nizozemski" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "npr. YubiKey, iPhone, poslovno računalo" @@ -13092,7 +13087,7 @@ msgstr "Uredite globalne postavke poput imena, opisa i ikone." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Uredi grupu" @@ -13123,7 +13118,7 @@ msgstr "Uredi medij" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Uredi poruku" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Ova kupnja ispunjava uvjete za povrat novca do {windowEndsOn}. Ovo će također odmah otkazati vašu pretplatu." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-pošta" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji ažuriran" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojiji" @@ -13525,7 +13520,7 @@ msgstr "Prazni favoriti" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Omogući" @@ -13680,7 +13675,7 @@ msgstr "Omogući mobilne push obavijesti" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Omogući obavijesti" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Omogućite integracije za koje ste konfigurirali vjerodajnice. Prikazane su samo dostupne usluge." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Omogući dvostruku provjeru autentičnosti" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Engleski (SAD)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Poboljšano" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Unesite novu e-adresu" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Unesite jedan od svojih rezervnih kodova ako ne možete koristiti svoj pristupni ključ." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Unesite jedan od svojih rezervnih kodova." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Unesite tekst" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Unesite {digitCount}-znamenkasti kôd iz aplikacije za provjeru autentičnosti ili rezervni kôd." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Unesite kod prije nastavka." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Unesite kôd iz aplikacije za provjeru autentičnosti." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Unesite svoje ime" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Unesite svoju lozinku." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Isteklo <0>{expiredDate}. <1/> više nisu aktivni. Možete se ponovno pretplatiti bilo kada." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Istječe" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Automatsko dovršavanje izraza" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Kategorije birača izraza" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Priprema emojija nije uspjela" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Obrada obrezane slike nije uspjela. Pokušajte ponovno." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Pokretanje SSO-a nije uspjelo" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Prebacivanje računa nije uspjelo" @@ -15053,7 +15048,7 @@ msgstr "Omiljeno" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favoriti" @@ -15268,6 +15263,11 @@ msgstr "Dovršite postavljanje računa" msgid "Finish account setup first" msgstr "Prvo dovršite postavljanje računa" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Završite u novoj kartici. Ako ste je zatvorili, ponovno pritisnite Nastavi s pristupnim ključem." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Naziv mape" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Postavke mape" @@ -15479,7 +15479,7 @@ msgstr "Za mene" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Za ovu provjeru vi nama šaljete tekstualnu poruku umjesto da je primite od nas." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Radi vaše sigurnosti, potvrdite svoj identitet za nastavak." @@ -15606,7 +15606,7 @@ msgstr "Zaboravljena lozinka" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Zaboravili ste lozinku?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Samo prijatelji i male zajednice" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Prijatelji prijatelja" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Općenito" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Njemačka" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Nabavite {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF URL-ovi" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF-ovi" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Globalni prečac" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Natrag" @@ -16374,6 +16374,11 @@ msgstr "Natrag" msgid "Go back and enter a valid email." msgstr "Vratite se i unesite valjanu e-adresu." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Vratite se na {productName} da biste nastavili." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Sakrij bilješke o isteku" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Sakrij favorite" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Sakrij utišane" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Sakrij utišane kanale" @@ -17358,7 +17363,7 @@ msgstr "Identitet" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Neaktivan" @@ -17818,7 +17823,7 @@ msgstr "Neprikladan profil" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Pristigla pošta" @@ -17867,7 +17872,7 @@ msgstr "Uključite ID zajednice." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Pretpregled stranice pozivnice" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Pozovi ljude" @@ -18456,7 +18461,7 @@ msgstr "Pozivatelj:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Pozivnice" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Pridruži se pozivu" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Pridruži se zajednici" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Pridružio/la se {productName}u" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Skoči" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Izbaci člana iz ove zajednice." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Izbaci člana" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Napusti poziv" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Napusti zajednicu" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Izrada poveznica" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Poveznica kopirana u međuspremnik" @@ -19859,8 +19864,8 @@ msgstr "Zlonamjerni softver ili opasne poveznice" msgid "Malware, credential theft, or harmful files." msgstr "Zlonamjerni softver, krađa vjerodajnica ili štetne datoteke." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Upravljaj" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Upravljaj računima" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Upravljajte aplikacijama i uređajima koji imaju pristup vašem računu" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Odmah označi sve nepročitane kanale pristigle pošte kao pročitane, bez traženja potvrde" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Označi kao pročitano" @@ -20021,7 +20026,7 @@ msgstr "Označi kao spojler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Označi kao nepročitano" @@ -20169,7 +20174,7 @@ msgstr "Zajednica za odrasle" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Sadržaj za odrasle" @@ -20315,7 +20320,7 @@ msgstr "Mjerenje…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "članova" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Članovi" @@ -20616,7 +20621,7 @@ msgstr "Spomenuti ovu ulogu?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Spominjanja" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Više radnji s medijima" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Više opcija" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Utišaj pozive" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Isključi obavijesti za kategoriju" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Isključi obavijesti za zajednice" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Isključi obavijesti za zajednicu" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Isključi zvuk ulaska" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Isključi obavijesti za favorite" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Naziv mora imati najmanje 2 znaka" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Imenujte pristupni ključ" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Obrazac za imenovanje pristupnog ključa" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Trebate račun?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Nikad" @@ -22276,7 +22281,7 @@ msgstr "Prvo najnovije" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Dalje" @@ -22905,7 +22910,7 @@ msgstr "Nema pronađenih korisnika" msgid "No verification is required." msgstr "Provjera nije potrebna." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Nema dostupnih metoda provjere" @@ -23038,11 +23043,13 @@ msgstr "Nije pronađeno" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Ne sada" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Bilješka (vidljiva samo vama)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Ništa" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Prilagodba obavijesti" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Postavke obavijesti" @@ -23152,7 +23159,7 @@ msgstr "Glasnoća obavijesti" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Isključeno" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Izvan mreže" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "U redu" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "na mreži" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Na mreži" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Samo članovi s dopuštenjem \"{manageCommunityPermissionLabel}\" mogu ovo promijeniti." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Samo spominjanja" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Otvori {labelText} u postavkama" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Otvori {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Otvorene izravne poruke" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Otvori izravnu poruku" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Otvori račun {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Otvori poveznicu" @@ -23850,7 +23857,7 @@ msgstr "Otvori brzi preklopnik" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Otvori postavke" @@ -23935,11 +23942,6 @@ msgstr "Otvori skočni prozor studija tema" msgid "Open theme studio…" msgstr "Otvori studio tema…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Otvorite ovaj prozor iz aplikacije {productName} kako biste upotrijebili svoj pristupni ključ." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Opcije" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Pristupni ključ" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Naziv pristupnog ključa" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Pristupni ključ ažuriran" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Pristupni ključevi" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Pristupni ključevi zahtijevaju potpisani macOS paket s valjanim identifikatorom aplikacije. Instalirajte potpisani klijent za stolna računala i pokušajte ponovno." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Lozinka" msgid "Password changed" msgstr "Lozinka promijenjena" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Upravitelji lozinki možda neće ponuditi vaš pristupni ključ na ovoj web-adresi. Umjesto toga pokušajte u skočnom prozoru na staroj adresi." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Zalijepite poveznicu poruke." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Osobni rječnik" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Osobne bilješke" @@ -24885,7 +24887,7 @@ msgstr "Prikvači grupnu izravnu poruku" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Prikvači poruku" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "prikvačeno" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Prikvačena izravna poruka" @@ -25020,7 +25022,7 @@ msgstr "Administrator platforme" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Reproduciraj" @@ -25318,6 +25320,11 @@ msgstr "Pritisnite tipku, gumb miša ili gumb gamepada za postavljanje prečaca. msgid "Press a shortcut…" msgstr "Pritisnite prečac…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Pritisnite Nastavi da biste koristili svoj pristupni ključ." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Primarni jezik" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Glavna navigacija" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Pravila privatnosti" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Postavke privatnosti" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Profi savjet:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Nastavi" @@ -26090,7 +26097,7 @@ msgstr "Reagiraj s {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Ponovno generiranje poništit će trenutačni token. Ažurirajte sav kôd koji koristi staru vrijednost." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registracija" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Registrirani pristupni ključevi" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Ukloni naslovnu sliku" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Ukloni oznaku" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Ukloni iz rječnika" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Ukloni iz favorita" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Uklonjeno iz omiljenih GIF-ova" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Uklonjeno iz favorita" @@ -27032,7 +27039,7 @@ msgstr "Uklanjanje dopuštenja može ograničiti značajke bota." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Uklanjanje vremenskog ograničenja omogućit će <0>{targetUserTag} ponovno slanje poruka, reagiranje i pridruživanje glasovnim kanalima." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Preimenuj" @@ -27119,7 +27126,7 @@ msgstr "Odgovori" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Odgovori" @@ -27209,7 +27216,7 @@ msgstr "Prijavi problem" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Prijavi poruku" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Zahtijevaj 2FA za radnje moderiranja" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Zahtijevaj pristupni ključ kao drugi faktor" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Poveznica za poništavanje lozinke nije važeća ili je istekla" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Poništi stanje sporazuma o zrelom sadržaju" @@ -27880,7 +27887,7 @@ msgstr "Obrnuta pretraga slike" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Obrnuto pretraživanje slika" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Pregledajte i potvrdite" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Pregledajte aplikacije koje mogu pristupiti vašem računu." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Pregledajte prošle kupnje i opcije povrata novca" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Pregledajte prijavljene uređaje i odjavite sesije koje ne prepoznajete." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Uloga ažurirana" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Uloge" @@ -28261,7 +28268,7 @@ msgstr "Zasićenost" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Opseg" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Opsezi" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Čitač zaslona" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Pretražite kanale, osobe ili zajednice" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Pretražite prijatelje" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Pretraži odabrani tekst" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Pretražite postavke" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Pretražite postavke…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Sigurnost" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Sigurnosne značajke" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Sigurnosni ključ" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Sigurnosni ključ / pristupni ključ" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Osjetljivi medijski sadržaj" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Poslano" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Sesija" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Sesija za {identifier} je istekla. Prijavite se ponovno." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Postavlja razinu za svaki zvučni efekt. Nadjačavanja za pojedine zvukove zanemaruju ovu postavku." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Postavke otvorene." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Odjeljci postavki" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Bočna traka" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Prijava" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Prijavite se kako biste preuzeli svoj poklon" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Prijavite se putem preglednika" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Prijavite se s pristupnim ključem" @@ -30666,7 +30673,7 @@ msgstr "Prijavite se putem davatelja jedinstvene prijave vaše organizacije." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Odjava" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Podaci za prijavu" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Tijek prijave" @@ -31189,7 +31196,7 @@ msgstr "Neke korisnike nije moguće dodati" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Nešto je pošlo po zlu" @@ -31374,7 +31381,7 @@ msgstr "Glasnoća zvuka" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Zvukovi" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Počnite s prijenosom privitaka čim se dodaju u polje za unos poruke" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Započni videopoziv" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Započni glasovni poziv" @@ -31899,7 +31906,7 @@ msgstr "naljepnica" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Naljepnica: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Naljepnice" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Prestati vjerovati svim poveznicama?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Želite li prestati koristiti pristupne ključeve za dvostruku provjeru autentičnosti?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Isključi sva spominjanja uloga" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Sakrij ugrađeni sadržaj" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "tekstualni kanal" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Tekstualni kanal" @@ -33055,7 +33062,7 @@ msgstr "Pošaljite nam poruku s telefona" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Tekst u govor" @@ -33119,6 +33126,11 @@ msgstr "To nije dovršeno. Neke su zajednice možda već napuštene, a vaš je r msgid "That did not go through. Nothing changed. Try again." msgstr "Nije uspjelo. Ništa se nije promijenilo. Pokušajte ponovno." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "To nije uspjelo. Pokušajte ponovno ili odustanite." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Ovo ne izgleda kao valjana boja. Pokušajte s heksadecimalnim zapisom, rgb(), hsl() ili nazivom CSS boje." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Ta se slika nije mogla koristiti. Isprobajte drugu datoteku." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Slika nije važeća. Pokušajte s drugom." @@ -34035,11 +34047,11 @@ msgstr "Ovo je opis druge opcije" msgid "This is the third option description" msgstr "Ovo je opis treće opcije" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Ovo je vaš posljednji pristupni ključ, a pristupni ključevi su vaš drugi faktor. Njegovim brisanjem isključit ćete dvostruku provjeru autentičnosti za svoj račun, a vaši trenutni rezervni kodovi prestat će raditi." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Ovo je vaš posljednji pristupni ključ. Kada ga više ne bude, nećete moći koristiti pristupni ključ kao drugi faktor." @@ -34154,16 +34166,6 @@ msgstr "Ovaj je sudionik bez zvuka" msgid "This participant was deafened by moderators" msgstr "Moderatori su ovom sudioniku isključili zvuk" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Ovaj zahtjev za pristupni ključ nije moguće provjeriti. Zatvorite ovaj prozor i pokušajte ponovno." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Zahtjev za pristupni ključ je istekao. Zatvorite ovaj prozor i pokušajte ponovno." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Ovo uklanja sve pouzdane domene. Ponovno ćete vidjeti upozorenje o vanj msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Ovo uklanja sve prilagođene prečace i ponovno omogućuje sve ugrađene prečace. Ovo se ne može poništiti." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Ovaj je zahtjev istekao. Vratite se i pokušajte ponovno." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Ova poveznica za poništavanje lozinke istekla je. Poveznice za poništavanje vrijede 1 sat. Zatražite novu." @@ -34807,7 +34814,7 @@ msgstr "Želite li prenijeti vlasništvo grupe na {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Prijenos vlasništva" @@ -34823,7 +34830,7 @@ msgstr "Vlasništvo preneseno na {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Prevedi" @@ -34980,7 +34987,7 @@ msgstr "Pokušajte s drugim nazivom varijable ili obrišite pretraživanje." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Pokušaj ponovno" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Pokušaj ponovno" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Pokušajte ponovno za trenutak." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Pokušajte potražiti nešto poput \"tema\", \"obavijesti\" ili \"privatnost\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Pokušajte sa sigurnosnim ključem / pristupnim ključem" @@ -35088,7 +35095,7 @@ msgstr "Turski" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Isključi" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Isključite dijeljenje zvuka za ovaj izvor ili pokušajte ponovno za trenutak." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Isključi kameru" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Isključite privatnost prijenosa prije pregledavanja pojedinosti za prijavu ili sigurnost računa." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Uključi" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Dvostruka provjera" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Dvostruka provjera autentičnosti" @@ -35288,7 +35295,7 @@ msgstr "Dvostruka provjera autentičnosti onemogućena" msgid "Two-factor authentication enabled" msgstr "Dvostruka provjera autentičnosti omogućena" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Dvostruka provjera autentičnosti je omogućena" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Deblokiraj korisnika" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Nekategorizirano" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Podcrtavanje poveznica na web-stranice" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Razumijem" @@ -35643,7 +35650,7 @@ msgstr "Univerzalna zamjena. Najniža kvaliteta, ali radi svugdje." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Uključi mikrofon na svim uređajima" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Uključi obavijesti za kategoriju" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Uključi obavijesti za zajednice" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Uključi obavijesti za zajednicu" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Uključi obavijesti za izravne poruke" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Uključi obavijesti za favorite" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Otkvači" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Otkvači poruku" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Otkvačiti ovu poruku?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Izravna poruka je otkvačena" @@ -36193,6 +36200,11 @@ msgstr "Ažuriraj e-poštu" msgid "Update my status" msgstr "Ažuriraj moj status" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Ažuriraj pristupni ključ" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Ažuriraj vremensko ograničenje" msgid "Update your own nickname." msgstr "Ažurirajte vlastiti nadimak." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Ažurirajte svoj pristupni ključ" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Upotrijebite zaseban prozor za postavljanje datuma praga povijesti poruk msgid "Use a different email address and verify it with a code." msgstr "Upotrijebite drugu adresu e-pošte i potvrdite je kodom." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Upotrijebi pristupni ključ iz upravitelja lozinki" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Koristi stvarnu vrijednost" msgid "Use alternative method" msgstr "Koristi drugu metodu" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Upotrijebite aplikaciju za autentifikaciju koja generira kodove za dvostruku provjeru autentičnosti" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Koristite samo ako jasno krši pravila {productName} i ne uklapa se u navedeno." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Želite li koristiti pristupne ključeve za dvostruku provjeru autentičnosti?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Upotrijebi pristupne ključeve za prijavu bez lozinke" @@ -36824,8 +36836,8 @@ msgstr "Koristi glasovnu aktivnost" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Upotrijebite provjeru pravopisa vašeg operativnog sustava kad je dostupna. Inače, upotrijebite ugrađene rječnike {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Upotrijebi svoj pristupni ključ" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Korisničke kontrole" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Otklanjanje pogrešaka korisnika" @@ -36972,7 +36984,7 @@ msgstr "Glasnoća korisnika" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Provjera otkazana" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Kod za provjeru" @@ -37185,7 +37197,7 @@ msgstr "E-pošta za potvrdu poslana. Provjerite svoju pristiglu poštu." msgid "Verification expired" msgstr "Provjera je istekla" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Provjerena zajednica" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Potvrdi" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Potvrdi vezu" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Potvrdite e-poštu" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Obrazac za provjeru identiteta" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Potvrdite da ste to vi" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Potvrdite svoju adresu e-pošte kako biste slali zahtjeve za prijateljstvo." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Potvrdite svoju e-poštu prije dodavanja pristupnog ključa." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Potvrdite svoju e-poštu prije dodavanja aplikacije za provjeru autentičnosti." @@ -37571,7 +37583,7 @@ msgstr "Pregledajte zabranjene korisnike i upravljajte njima." msgid "View and manage every webhook configured across your community." msgstr "Pregledajte sve webhookove konfigurirane u vašoj zajednici i upravljajte njima." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Pregledajte svoje rezervne kodove za oporavak računa i upravljajte njima" @@ -37605,7 +37617,7 @@ msgstr "Prikaz kanala" msgid "View channel members" msgstr "Prikaz članova kanala" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Prikaži kodove" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Pregledaj planove" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Prikaži profil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "glasovni kanal" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Glasovni kanal" @@ -38073,7 +38085,7 @@ msgstr "Poništeno" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Pričekajte ovdje" msgid "Waiting for connection..." msgstr "Čekanje veze..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Čekanje pristupnog ključa…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Gledaj" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Gledaj prijenos" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Pregledi web-stranica" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Dobro došli natrag" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Trenutno niste ni u jednoj zajednici." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Blokirali ste korisnika {userName}. Nećete moći slati poruke dok ga ne deblokirate." @@ -39101,6 +39113,11 @@ msgstr "Brisanje možete otkazati u roku od 14 dana" msgid "You can close this modal. The import will continue in the background." msgstr "Možete zatvoriti ovaj prozor. Uvoz će se nastaviti u pozadini." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Ovu karticu možete zatvoriti" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Sada možete zatvoriti ovu karticu i vratiti se u aplikaciju." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Ne možete poslati zahtjev za prijateljstvo samome sebi." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Ne možete slati poruke u ovom kanalu." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Još uvijek ćete morati dovršiti korak s e-poštom." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Nakon unosa lozinke više se od vas neće tražiti pristupni ključ. Vaša aplikacija za provjeru autentičnosti ostaje vaš drugi faktor." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Morat ćete se ponovno prijaviti na svim odjavljenim uređajima" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Za prijavu na novom uređaju trebat će vam jedan od vaših pristupnih ključeva. Ako izgubite sve pristupne ključeve, možete trajno izgubiti pristup svom računu. Rezervni kodovi bit će spremljeni za vas kako biste se i dalje mogli prijaviti." @@ -39918,12 +39935,12 @@ msgstr "Vaš je račun prenov da biste slali poruke u ovoj zajednici." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Vaš zahtjev za račun čeka odobrenje. Možete se prijaviti nakon što ga administrator odobri." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Vaš račun zahtijeva višestruku provjeru autentičnosti, ali na ovom uređaju nisu postavljene podržane metode. Prijavite se na uređaju s aplikacijom za provjeru autentičnosti ili sigurnosnim ključem ili se obratite podršci." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Račun vam više neće biti zaštićen dvostrukom provjerom autentičnosti prilikom prijave lozinkom. Također ćete izgubiti povišena dopuštenja u zajednicama koje zahtijevaju dvostruku provjeru autentičnosti." @@ -39941,16 +39958,6 @@ msgstr "Vaša radnja nije mogla biti dovršena jer ju je naš sigurnosni sustav msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Vaša prijava čeka pregled. I dalje možete ažurirati pojedinosti unosa ili povući prijavu." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Vaš preglednik blokirao je skočni prozor za pristupni ključ. Dopustite skočne prozore za ovu web-lokaciju i pokušajte ponovno." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Vaš preglednik ne podržava pristupne ključeve na ovoj domeni. Ažurirajte preglednik ili se prijavite svojom lozinkom i dvofaktorskim kodom." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Vaša zajednica treba imati najmanje {minMemberCount, plural, one {# čl msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Vaša je kreditna kartica provjerena. Ako je kartica valjana, sadržaj za odrasle uskoro će biti otključan. Možete zatvoriti ovu karticu preglednika i vratiti se u aplikaciju." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Vaš će uređaj zatražiti da spremite ažurirani pristupni ključ za {name}. Zamijenit će stari." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Vaš će uređaj zatražiti da spremite ažurirani pristupni ključ za {name}. Upotrijebite isti telefon ili sigurnosni ključ koji ste upravo koristili." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zumiraj" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Povećaj prikaz" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/hu/messages.po b/fluxer_app/src/features/i18n/locales/hu/messages.po index 554d51ac5..10519bf0b 100644 --- a/fluxer_app/src/features/i18n/locales/hu/messages.po +++ b/fluxer_app/src/features/i18n/locales/hu/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {tag} other {tag}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# említés} other {# említés}}" @@ -2370,8 +2370,8 @@ msgstr "6 hónap" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6 jegyű kód" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Fiók- és prémiumfelülbírálások" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Hozzáférés a fiókhoz" @@ -2807,7 +2807,7 @@ msgstr "Aktív havi előfizető (lemondás ütemezve)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "A folytatáshoz adj hozzá egy fiókot." msgid "Add an email and password to your account first." msgstr "Először adj meg egy e-mail-címet és jelszót a fiókodhoz." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Tedd még biztonságosabbá a fiókodat" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Bot hozzáadása egy célhelyhez" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Csatorna hozzáadása" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Új reakciók hozzáadása az üzenetekhez." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Jegyzet hozzáadása" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Egyéni jogosultságok hozzáadása" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Jelszókulcs hozzáadása" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Reakció hozzáadása" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Hozzáadás a szótárhoz" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Hozzáadás a kedvencekhez" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Hozzáadva a kedvenc GIF-ekhez" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Hozzáadva a kedvencekhez" @@ -3296,11 +3296,11 @@ msgstr "Hozzáadva a kedvencekhez" msgid "Added to saved media" msgstr "Hozzáadva a mentett médiához" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Hozzáadva: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Hozzáadva: {createdDate} • utoljára használva: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Összes nyelv" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Összes üzenet" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Már törölve" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Már van fiókod?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Alkalmazás nagyítása" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Alkalmazás nagyítási szintje" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Jóváhagyás" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Hagyd jóvá ezt az alkalmazást a már használt {productName} alkalmazásodból. Nincs szükség jelszóra." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Biztosan törölni szeretnéd a(z) „{categoryName}” kategóriát? Ezt a műveletet nem lehet visszavonni." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Biztosan törölni szeretnéd a(z) <0>{0} jelszókulcsot?" @@ -4493,7 +4493,7 @@ msgstr "Biztosan törölni szeretnéd ezt a mellékletet? Ez a művelet nem vonh msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Biztosan törölni szeretnéd ezt a közösséget? Ez a művelet nem vonható vissza. Minden csatorna, üzenet és beállítás véglegesen törlődik." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Biztosan törölni szeretnéd ezt a jelszókulcsot?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Kérdezzen, mielőtt hívásokat indítana." #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Bejelentkezéskor a jelszavad után jelszókulcsot is kérünk" @@ -4690,7 +4690,7 @@ msgstr "Mellékletek" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Hang" @@ -4851,14 +4851,14 @@ msgstr "Hitelesítés" msgid "Authenticator" msgstr "Hitelesítő" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Hitelesítő alkalmazás" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Hitelesítő kód" @@ -4928,7 +4928,7 @@ msgstr "Engedélyezett alkalmazások" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Jelenleg távol" msgid "Back" msgstr "Vissza" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Vissza a(z) {productName} alkalmazásba" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Vissza a szerepkörökhöz" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Vissza a beállításokhoz" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Vissza a bejelentkezéshez" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Biztonsági kód" @@ -5351,7 +5356,7 @@ msgstr "Biztonsági kód" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Elérted a mentett üzenetek maximális számát" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Hívások" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera kikapcsolva" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera bekapcsolva" @@ -6364,9 +6369,9 @@ msgstr "Ide nem tölthetsz fel fájlokat" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Ide nem tölthetsz fel fájlokat" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Emoji módosítása" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Ismerős becenevének módosítása" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Csoportbeli becenevem módosítása" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Becenév módosítása" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Csatornaműveletek" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "A csatorna hozzáadva a kedvencekhez" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Csatorna létrehozva" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Csatorna hibakeresése" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Csatorna törölve" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Csatornarekord" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "A csatorna el lett távolítva a kedvencek közül" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Válaszd ki a profilod kiemelőszínét" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Fiókregisztráció befejezése" @@ -7715,7 +7720,7 @@ msgstr "A bejelentések küldéséhez fejezd be a fiókod regisztrációját, é msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Fejezd be a fiókod regisztrációját egy e-mail-cím és jelszó megadásával. A befejezés előtt ellenőrző kódot küldünk az e-mail-címed megerősítéséhez." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Fejezd be a fiókod regisztrációját, hogy hozzáférhess a biztonsági funkciókhoz, például a kétlépcsős azonosításhoz és a jelszókulcsokhoz." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Törlöd a gyors CSS-t?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Keresés törlése" @@ -8103,7 +8108,7 @@ msgstr "A másolás ki van kapcsolva" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Bezárás" @@ -8160,11 +8165,9 @@ msgstr "Bezárás a menüsávba" msgid "Close to tray" msgstr "Bezárás az értesítési területre" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Ablak bezárása" @@ -8456,7 +8459,7 @@ msgstr "Kommunikáció" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Közösségi hibakeresés" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Közösségi alapértelmezett" @@ -8577,7 +8580,7 @@ msgstr "Közösségi tag adatai" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Közösségi tagok" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Közösségi értesítési szint" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Közösségi értesítési beállítások" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Összehasonlítás" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Felnőtt tartalomhoz szükséges ellenőrzés elvégzése" @@ -9093,7 +9096,7 @@ msgstr "Kapcsolat: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "A helyi menük bal egérgombbal (gombokon) vagy jobb egérgombbal (egyé #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Folytatás" msgid "Continue to checkout" msgstr "Tovább a fizetéshez" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Folytasd a(z) {host} számára egy jelszókulcs létrehozását" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Tovább a közösség bejelentéséhez" msgid "Continue to report user" msgstr "Tovább a felhasználó bejelentéséhez" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Folytatás jelszókulccsal" @@ -9238,11 +9238,6 @@ msgstr "Folytatás jelszókulccsal" msgid "Continue with SSO" msgstr "Folytatás SSO-val" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Folytasd a jelszókulcsoddal a bejelentkezést a(z) {host} webhelyre" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Személyek vagy közösségek ellen szervez összehangolt támadásokat, #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Másolva" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kategóriaazonosító másolása" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Csatornaazonosító másolása" @@ -9421,12 +9416,12 @@ msgstr "Csatornalink másolása" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Kód másolása" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Közösségi azonosító másolása" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Meghívó URL-jének másolása" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Üzenet másolása" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Üzenetazonosító másolása" @@ -9570,7 +9565,7 @@ msgstr "Üzenetazonosító másolása" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Matrica URL-jének másolása" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Másold a beállítási kulcsot a hitelesítő alkalmazásodba." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Felhasználói azonosító másolása" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Felhasználónév másolása" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Nem sikerült törölni az alkalmazást" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Nem sikerült törölni a jelszókulcsot" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Nem sikerült elküldeni a meghívót" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Nem sikerült elküldeni a meghívót. Próbáld újra." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Nem sikerült frissíteni az említésletiltás felülbírálatát" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Nem sikerült frissíteni a jelszókulcsos kétlépcsős azonosítást" @@ -10206,6 +10201,11 @@ msgstr "Nem sikerült frissíteni az alternatív szöveget. Próbáld újra." msgid "Couldn't update voice activity sharing right now" msgstr "Nem sikerült frissíteni a hangtevékenység megosztását" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Nem sikerült frissíteni a jelszókulcsodat. Próbáld újra." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Nem sikerült feltölteni a profilképet" msgid "Couldn't upload banner" msgstr "Nem sikerült feltölteni a borítóképet" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Nem sikerült használni a jelszókulcsodat a felugró ablakban. Próbáld újra." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Nem sikerült ellenőrizni a kódot. Próbáld újra." msgid "Couldn't verify the connection" msgstr "Nem sikerült ellenőrizni a kapcsolatot" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Nem sikerült a jelszókulcsos ellenőrzés. Próbáld újra." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Hangulatos" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Létrehozás" @@ -10298,7 +10293,7 @@ msgstr "Új csoport létrehozása {userName} felhasználóval" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Alkalmazás létrehozása" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Kategória létrehozása" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Csatorna létrehozása" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Közösség létrehozása" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Egyéni figyelmeztető szöveg" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Egyéni…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Hibakeresés" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Csatorna hibakeresése" @@ -11164,7 +11159,7 @@ msgstr "Üzenet hibakeresése" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Felhasználó hibakeresése" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "{fileName} törlése" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Fiók törlése" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Alkalmazás törlése" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Melléklet törlése" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Média törlése" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Üzenet törlése" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Más tagok üzeneteinek törlése. A rögzítés külön szabályozható." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Jelszókulcs törlése" @@ -11701,7 +11696,7 @@ msgstr "Írd le, miről szól a közösséged" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Leírás" @@ -11966,7 +11961,7 @@ msgstr "Eszköz:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Közvetlen bemenet" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Közvetlen üzenet" @@ -12050,7 +12045,7 @@ msgstr "Közvetlen üzenetek előnézete" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Közvetlen üzenetek" @@ -12077,14 +12072,14 @@ msgstr "Közvetlen feltöltés aktív" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Kikapcsolás" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Fiók inaktiválása" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Kapcsolat bontva" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Felfedezhető közösség" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Számazonosító" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Elvetés" @@ -12477,7 +12472,7 @@ msgstr "DM- és ismerősjelölési beállítások" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Közvetlen beszélgetés bezárva" @@ -12607,7 +12602,7 @@ msgstr "Nem tiltja le. Később újra megnyithatod." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domain" @@ -12697,7 +12692,7 @@ msgstr "Kattints duplán valakire az adás megtekintéséhez." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Holland" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "pl. YubiKey, iPhone, munkahelyi számítógép" @@ -13092,7 +13087,7 @@ msgstr "Globális beállítások szerkesztése, például név, leírás és iko #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Csoport szerkesztése" @@ -13123,7 +13118,7 @@ msgstr "Média szerkesztése" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Üzenet szerkesztése" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Eddig kérhetsz visszatérítést: {windowEndsOn}. Ezzel az előfizetésed is azonnal megszűnik." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-mail" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji frissítve" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojik" @@ -13525,7 +13520,7 @@ msgstr "Üres kedvencek" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Engedélyezés" @@ -13680,7 +13675,7 @@ msgstr "Mobilértesítések engedélyezése" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Értesítések engedélyezése" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Engedélyezd azokat az integrációkat, amelyekhez megadtad a hitelesítőadatokat. Csak az elérhető szolgáltatások jelennek meg." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Kétlépcsős azonosítás engedélyezése" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Angol (USA)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Továbbfejlesztett" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Új e-mail-cím megadása" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Írj be egy biztonsági kódot, ha nem tudod használni a jelszókulcsodat." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Írj be egy biztonsági kódot." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Szöveg beírása" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Add meg a hitelesítő alkalmazásod {digitCount} számjegyű kódját vagy egy biztonsági kódot." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "A folytatáshoz add meg a kódot." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Add meg a hitelesítő alkalmazásodban látható kódot." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Add meg a nevedet" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Add meg a jelszavad." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Lejárt ekkor: <0>{expiredDate}. Az <1/> már nem érvényesek. Bármikor újra előfizethetsz." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Lejár" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Kifejezés-automatikus kiegészítés" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Kifejezésválasztó kategóriái" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Nem sikerült előkészíteni az emojikat" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Nem sikerült feldolgozni a körbevágott képet. Próbáld újra." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Nem sikerült elindítani az egységes bejelentkezést (SSO)" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Fiókváltás sikertelen" @@ -15053,7 +15048,7 @@ msgstr "Hozzáadva a kedvencekhez" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Kedvencek" @@ -15268,6 +15263,11 @@ msgstr "Fiókregisztráció befejezése" msgid "Finish account setup first" msgstr "Előbb fejezd be a fiókod regisztrációját" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Fejezd be az új lapon. Ha bezártad, nyomd meg újra a Folytatás jelszókulccsal gombot." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Mappanév" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Mappa beállításai" @@ -15479,7 +15479,7 @@ msgstr "Nekem" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Ehhez az ellenőrzéshez te küldesz nekünk SMS-t ahelyett, hogy tőlünk kapnál egyet." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "A biztonságod érdekében kérjük, erősítsd meg, hogy te vagy az, mielőtt folytatnád." @@ -15606,7 +15606,7 @@ msgstr "Elfelejtett jelszó" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Elfelejtetted a jelszavad?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Csak ismerősök és kis közösségek" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Ismerősök ismerősei" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Általános" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Németország" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "{premiumProductName} beszerzése" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF URL-ek" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF-ek" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Globális billentyűparancs" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Vissza" @@ -16374,6 +16374,11 @@ msgstr "Vissza" msgid "Go back and enter a valid email." msgstr "Menj vissza, és adj meg egy érvényes e-mail-címet." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "A folytatáshoz térj vissza a(z) {productName} alkalmazásba." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Lejárati lábjegyzetek elrejtése" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Kedvencek elrejtése" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Némítottak elrejtése" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Némított csatornák elrejtése" @@ -17358,7 +17363,7 @@ msgstr "Azonosság" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inaktív" @@ -17818,7 +17823,7 @@ msgstr "Nem megfelelő profil" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Beérkezett üzenetek" @@ -17867,7 +17872,7 @@ msgstr "Add meg a közösség azonosítóját." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Meghívóoldal előnézete" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Emberek meghívása" @@ -18456,7 +18461,7 @@ msgstr "Meghívó felhasználó:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Meghívók" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Csatlakozás a híváshoz" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Csatlakozás a közösséghez" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Csatlakozott a(z) {productName} szolgáltatáshoz" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Ugrás" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Tag kirúgása ebből a közösségből." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Tag kirúgása" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Hívás elhagyása" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Közösség elhagyása" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Linkkészítő" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "A link a vágólapra másolva" @@ -19859,8 +19864,8 @@ msgstr "Kártevő vagy veszélyes linkek" msgid "Malware, credential theft, or harmful files." msgstr "Kártevő, hitelesítő adatok lopása vagy káros fájlok." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Kezelés" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Fiókok kezelése" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Alkalmazások és eszközök kezelése, amelyek hozzáférnek a fiókodhoz" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "A beérkezett üzenetek összes olvasatlan csatornájának azonnali megjelölése olvasottként, megerősítés nélkül" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Megjelölés olvasottként" @@ -20021,7 +20026,7 @@ msgstr "Megjelölés spoilerként" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Olvasatlanként jelölés" @@ -20169,7 +20174,7 @@ msgstr "Felnőtt tartalmú közösség" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Felnőtt tartalom" @@ -20315,7 +20320,7 @@ msgstr "Mérés…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "tag" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Tagok" @@ -20616,7 +20621,7 @@ msgstr "Megemlíted ezt a szerepkört?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Említések" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "További médiaműveletek" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "További lehetőségek" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Hívások némítása" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Kategória némítása" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Közösségek némítása" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Közösség némítása" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Belépési hang némítása" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Kedvencek némítása" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "A névnek legalább 2 karakter hosszúnak kell lennie" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Jelszókulcs elnevezése" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Jelszókulcs elnevezése – űrlap" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Nincs még fiókod?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Soha" @@ -22276,7 +22281,7 @@ msgstr "Legújabb elöl" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Tovább" @@ -22905,7 +22910,7 @@ msgstr "Nem található felhasználó" msgid "No verification is required." msgstr "Nincs szükség ellenőrzésre." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Nincs elérhető ellenőrzési módszer" @@ -23038,11 +23043,13 @@ msgstr "Nem található" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Most nem" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Jegyzet (csak te láthatod)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Semmi" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Egyéni értesítési beállítások" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Értesítési beállítások" @@ -23152,7 +23159,7 @@ msgstr "Értesítési hangerő" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Ki" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Rendben" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Ezt csak a(z) „{manageCommunityPermissionLabel}” jogosultsággal rendelkező tagok módosíthatják." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Csak említések" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "A(z) {labelText} megnyitása a beállításokban" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Megnyitás: {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Nyitott közvetlen üzenetek" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "DM megnyitása" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Számla megnyitása: {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Link megnyitása" @@ -23850,7 +23857,7 @@ msgstr "Gyorsváltó megnyitása" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Beállítások megnyitása" @@ -23935,11 +23942,6 @@ msgstr "Témastúdió felugró ablakának megnyitása" msgid "Open theme studio…" msgstr "Témastúdió megnyitása…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Nyisd meg ezt az ablakot a(z) {productName} alkalmazásból a jelszókulcsod használatához." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Beállítások" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Jelszókulcs" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Jelszókulcs neve" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Jelszókulcs frissítve" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Jelszókulcsok" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "A jelszókulcsokhoz érvényes alkalmazásazonosítóval rendelkező, aláírt macOS-csomag szükséges. Telepítsd az aláírt asztali klienst, majd próbáld újra." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Jelszó" msgid "Password changed" msgstr "Jelszó megváltoztatva" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Lehet, hogy a jelszókezelők nem kínálják fel a jelszókulcsodat ezen a webcímen. Próbáld meg inkább egy felugró ablakban a régi címen." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Illeszd be az üzenet linkjét." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Személyes szótár" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Személyes jegyzetek" @@ -24885,7 +24887,7 @@ msgstr "Csoportos beszélgetés rögzítése" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Üzenet rögzítése" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "rögzítve" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Rögzített DM" @@ -25020,7 +25022,7 @@ msgstr "Platformadmin" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Lejátszás" @@ -25318,6 +25320,11 @@ msgstr "A hozzárendeléshez nyomj meg egy billentyűt, egérgombot vagy játék msgid "Press a shortcut…" msgstr "Nyomj meg egy billentyűkombinációt…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Nyomd meg a Folytatás gombot a jelszókulcsod használatához." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Elsődleges nyelv" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Fő navigáció" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Adatvédelmi irányelvek" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Adatvédelmi beállítások" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Hasznos tipp:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Tovább" @@ -26090,7 +26097,7 @@ msgstr "Reagálás ezzel: {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Az újragenerálás érvényteleníti az aktuális tokent. Frissítsd az összes kódot, amely a régi értéket használja." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Regisztráció" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Regisztrált jelszókulcsok" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Borítókép eltávolítása" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Eltávolítás a mentett üzenetek közül" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Eltávolítás a szótárból" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Eltávolítás a kedvencekből" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Eltávolítva a kedvenc GIF-ek közül" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Eltávolítva a kedvencek közül" @@ -27032,7 +27039,7 @@ msgstr "A jogosultságok eltávolítása korlátozhatja a bot funkcióit." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Az ideiglenes korlátozás feloldásával <0>{targetUserTag} ismét küldhet üzeneteket, reagálhat és csatlakozhat hangcsatornákhoz." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Átnevezés" @@ -27119,7 +27126,7 @@ msgstr "Válaszok" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Válasz" @@ -27209,7 +27216,7 @@ msgstr "Probléma bejelentése" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Üzenet bejelentése" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Kétlépcsős azonosítás megkövetelése a moderálási műveletekhez" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Jelszókulcs megkövetelése második hitelesítési tényezőként" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "A visszaállítási hivatkozás érvénytelen vagy lejárt" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Felnőtt tartalomra vonatkozó beleegyezés állapotának visszaállítása" @@ -27880,7 +27887,7 @@ msgstr "Kép fordított keresése" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Képek fordított keresése" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Áttekintés és megerősítés" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Tekintsd át a fiókodhoz hozzáférő alkalmazásokat." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Korábbi vásárlások és visszatérítési lehetőségek áttekintése" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Tekintsd át a bejelentkezett eszközöket, és jelentkezz ki az ismeretlen munkamenetekből." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Szerepkör frissítve" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Szerepkörök" @@ -28261,7 +28268,7 @@ msgstr "Telítettség" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Hatókör" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Hatókörök" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Képernyőolvasó" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Csatornák, személyek vagy közösségek keresése" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Ismerősök keresése" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Kijelölt szöveg keresése" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Beállítások keresése" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Beállítások keresése…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Biztonság" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Biztonsági funkciók" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Biztonsági kulcs" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Biztonsági kulcs / jelszókulcs" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Érzékeny média" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Elküldve" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Munkamenet" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "A(z) {identifier} munkamenete lejárt. Jelentkezz be újra." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Beállítja az összes hangeffekt hangerőszintjét. Az egyes hangokhoz megadott egyéni hangerő figyelmen kívül hagyja ezt." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Beállítások megnyitva." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Beállítások szakaszai" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Oldalsáv" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Bejelentkezés" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Jelentkezz be az ajándékodért" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Bejelentkezés böngészőn keresztül" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Bejelentkezés jelszókulccsal" @@ -30666,7 +30673,7 @@ msgstr "Jelentkezz be a szervezeted egységes bejelentkezési szolgáltatójáva #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Kijelentkezés" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Bejelentkezési adatok" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Bejelentkezési folyamat" @@ -31189,7 +31196,7 @@ msgstr "Néhány felhasználó nem adható hozzá" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Valami hiba történt" @@ -31374,7 +31381,7 @@ msgstr "Hangerő" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Hangok" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Mellékletek feltöltésének indítása, amint hozzáadod őket az üzenetbeviteli mezőhöz" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Videóhívás indítása" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Hanghívás indítása" @@ -31899,7 +31906,7 @@ msgstr "matrica" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Matrica: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Matricák" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Minden link megbízhatóságának megszüntetése?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Kikapcsolod a jelszókulcsos kétlépcsős azonosítást?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Összes szerepkör-említés mellőzése" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Beágyazott tartalmak elrejtése" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "szöveges csatorna" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Szöveges csatorna" @@ -33055,7 +33062,7 @@ msgstr "Küldj nekünk SMS-t a telefonodról" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Szövegfelolvasás" @@ -33119,6 +33126,11 @@ msgstr "Ez nem fejeződött be. Lehetséges, hogy egyes közösségekből már k msgid "That did not go through. Nothing changed. Try again." msgstr "Nem sikerült. Nem változott semmi. Próbáld újra." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Ez nem sikerült. Próbáld újra, vagy szakítsd meg." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Ez nem tűnik érvényes színnek. Próbálj meg hexadecimális, rgb(), hsl() értéket vagy CSS színnevet használni." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Ez a kép nem használható. Próbálj másik fájlt." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Ez a kép érvénytelen. Próbálj másikat." @@ -34035,11 +34047,11 @@ msgstr "Ez a második opció leírása" msgid "This is the third option description" msgstr "Ez a harmadik opció leírása" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Ez az utolsó jelszókulcsod, és a jelszókulcsok a második hitelesítési tényeződ. A törlésével kikapcsolod a fiókod kétlépcsős azonosítását, és a jelenlegi biztonsági kódjaid sem fognak többé működni." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Ez az utolsó jelszókulcsod. Ha törlöd, nem tudsz többé jelszókulcsot használni második hitelesítési tényezőként." @@ -34154,16 +34166,6 @@ msgstr "Ennél a résztvevőnél ki van kapcsolva a hang" msgid "This participant was deafened by moderators" msgstr "A moderátorok kikapcsolták a hangot ennél a résztvevőnél" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Ezt a jelszókulcs-kérést nem sikerült ellenőrizni. Zárd be ezt az ablakot, és próbáld újra." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Ez a jelszókulcs-kérés időtúllépés miatt megszakadt. Zárd be ezt az ablakot, és próbáld újra." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Ez eltávolít minden megbízható domaint. Ismét látni fogod a küls msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Ezzel minden egyéni billentyűparancsot eltávolít, és újra engedélyezi az összes beépített billentyűparancsot. Ez a művelet nem vonható vissza." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Ez a kérés lejárt. Menj vissza, és próbáld újra." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Ez a visszaállítási link lejárt. A visszaállítási linkek 1 órán át érvényesek. Kérj egy újat." @@ -34807,7 +34814,7 @@ msgstr "Átruházod a csoport tulajdonjogát a(z) {userName} felhasználóra?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Tulajdonjog átruházása" @@ -34823,7 +34830,7 @@ msgstr "Tulajdonjog átruházva {0} részére" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Fordítás" @@ -34980,7 +34987,7 @@ msgstr "Próbálj másik változónevet, vagy töröld a keresést." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Újra" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Újra" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Próbáld újra egy kis idő múlva." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Próbálj meg rákeresni például a „téma”, „értesítések” vagy „adatvédelem” kifejezésekre" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Biztonsági kulcs vagy jelszókulcs használata" @@ -35088,7 +35095,7 @@ msgstr "Török" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Kikapcsolás" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Kapcsold ki a hangmegosztást ennél a forrásnál, vagy próbáld újra egy kis idő múlva." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Kamera kikapcsolása" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "A bejelentkezési és fiókbiztonsági adatok megtekintéséhez kapcsold ki a streamelési adatvédelmet." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Bekapcsolás" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Kétlépcsős" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Kétlépcsős azonosítás" @@ -35288,7 +35295,7 @@ msgstr "Kétlépcsős azonosítás kikapcsolva" msgid "Two-factor authentication enabled" msgstr "Kétlépcsős azonosítás bekapcsolva" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "A kétlépcsős azonosítás engedélyezve van" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Felhasználó letiltásának feloldása" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Besorolatlan" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Webhelylinkek aláhúzása" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Értem" @@ -35643,7 +35650,7 @@ msgstr "Univerzális tartalék. Legalacsonyabb minőség, de mindenhol működik #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Összes eszköz némításának feloldása" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Kategória némításának feloldása" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Közösségek némításának feloldása" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Közösség némításának feloldása" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "DM-ek némításának feloldása" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Kedvencek némításának feloldása" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Rögzítés feloldása" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Üzenet rögzítésének feloldása" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Feloldod ennek az üzenetnek a rögzítését?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Rögzítés feloldva (közvetlen üzenet)" @@ -36193,6 +36200,11 @@ msgstr "E-mail-cím módosítása" msgid "Update my status" msgstr "Állapotom frissítése" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Jelszókulcs frissítése" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Ideiglenes korlátozás módosítása" msgid "Update your own nickname." msgstr "Szerkeszd a saját beceneved." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Frissítsd a jelszókulcsodat" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Külön ablakban állíthatod be az üzenetelőzmények küszöbdátumá msgid "Use a different email address and verify it with a code." msgstr "Használj másik e-mail-címet, és erősítsd meg egy kóddal." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Jelszókezelőben tárolt jelszókulcs használata" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Tényleges érték használata" msgid "Use alternative method" msgstr "Másik fizetési mód használata" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Használj hitelesítő alkalmazást a kétlépcsős azonosításhoz szükséges kódok generálásához" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Csak akkor használd, ha egyértelműen sérti a(z) {productName} szabályait, és nem illik a fentiekbe." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Bekapcsolod a jelszókulcsos kétlépcsős azonosítást?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Használj jelszókulcsokat a jelszó nélküli bejelentkezéshez" @@ -36824,8 +36836,8 @@ msgstr "Beszédérzékelés használata" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Használd az operációs rendszered helyesírás-ellenőrzőjét, ha elérhető. Ellenkező esetben használd a(z) {productName} beépített szótárait." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Használd a jelszókulcsodat" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Felhasználói vezérlők" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Felhasználói hibakeresés" @@ -36972,7 +36984,7 @@ msgstr "Felhasználó hangereje" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Ellenőrzés megszakítva" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Ellenőrző kód" @@ -37185,7 +37197,7 @@ msgstr "Ellenőrző e-mail elküldve. Nézd meg a beérkező üzeneteidet." msgid "Verification expired" msgstr "Az ellenőrzés lejárt" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Ellenőrzött közösség" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Ellenőrzés" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Kapcsolat ellenőrzése" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "E-mail-cím megerősítése" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Személyazonosság-ellenőrző űrlap" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Igazold, hogy te vagy az" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Ismerősjelölések küldéséhez erősítsd meg az e-mail-címedet." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Jelszókulcs hozzáadása előtt erősítsd meg az e-mail-címedet." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Hitelesítő alkalmazás hozzáadása előtt erősítsd meg az e-mail-címedet." @@ -37571,7 +37583,7 @@ msgstr "Kitiltott felhasználók megtekintése és kezelése." msgid "View and manage every webhook configured across your community." msgstr "A közösségedben beállított összes webhook megtekintése és kezelése." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Fiók-helyreállító biztonsági kódok megtekintése és kezelése" @@ -37605,7 +37617,7 @@ msgstr "Csatorna megtekintése" msgid "View channel members" msgstr "Csatornatagok megtekintése" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Kódok megtekintése" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Csomagok megtekintése" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Profil megtekintése" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "hangcsatorna" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Hangcsatorna" @@ -38073,7 +38085,7 @@ msgstr "Érvénytelenítve" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Várj itt" msgid "Waiting for connection..." msgstr "Kapcsolódásra vár..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Várakozás a jelszókulcsra…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Nézés" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Adás megtekintése" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Webhelyelőnézetek" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Üdv újra" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Jelenleg nem vagy tagja egyetlen közösségnek sem." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Letiltottad {userName} felhasználót. Nem tudsz neki üzenetet küldeni, amíg fel nem oldod a tiltását." @@ -39101,6 +39113,11 @@ msgstr "A törlési folyamatot 14 napon belül visszavonhatod" msgid "You can close this modal. The import will continue in the background." msgstr "Bezárhatod ezt az ablakot. Az importálás a háttérben folytatódik." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Bezárhatod ezt a lapot" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Most már bezárhatod ezt a lapot, és visszatérhetsz az alkalmazásba." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Nem küldhetsz magadnak ismerősjelölést." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Ebben a csatornában nem küldhetsz üzeneteket." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Az e-mailes lépést még be kell fejezned." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Többé nem kérünk jelszókulcsot a jelszavad után. A hitelesítő alkalmazásod továbbra is a második hitelesítési tényeződ marad." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Újra be kell jelentkezned minden kijelentkezett eszközön" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Új eszközön való bejelentkezéshez szükséged lesz az egyik jelszókulcsodra. Ha az összes jelszókulcsodat elveszíted, véglegesen kizárhatod magad a fiókodból. Biztonsági kódokat mentünk el neked, így akkor is be tudsz majd jutni." @@ -39918,12 +39935,12 @@ msgstr "A fiókod túl új ahhoz, hogy üzeneteket küldj ebben a közösségben msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "A fiókkérelmed jóváhagyásra vár. Bejelentkezhetsz, miután egy admin jóváhagyta." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "A fiókodhoz többlépcsős azonosítás szükséges, de ezen az eszközön nincs beállítva támogatott módszer. Jelentkezz be egy olyan eszközön, amelyen elérhető a hitelesítő alkalmazásod vagy a biztonsági kulcsod, vagy lépj kapcsolatba az ügyfélszolgálattal." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "A fiókodat már nem védi kétlépcsős azonosítás, amikor jelszóval jelentkezel be. Emellett elveszíted az emelt szintű jogosultságaidat azokban a közösségekben, amelyek kétlépcsős azonosítást követelnek meg." @@ -39941,16 +39958,6 @@ msgstr "A műveletet nem sikerült végrehajtani, mert a biztonsági rendszerein msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "A jelentkezésed felülvizsgálatra vár. Addig is frissítheted a bejegyzésed adatait, vagy visszavonhatod a jelentkezést." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "A böngésződ blokkolta a jelszókulcs felugró ablakát. Engedélyezd a felugró ablakokat ehhez a webhelyhez, majd próbáld újra." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "A böngésződ nem támogatja a jelszókulcsokat ezen a domainen. Frissítsd a böngésződet, vagy jelentkezz be a jelszavaddal és a kétlépcsős azonosítás kódjával." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "A közösségednek legalább {minMemberCount, plural, one {# tagra} othe msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Ellenőriztük a hitelkártyádat. Ha a kártya érvényes, a felnőtt tartalom hamarosan elérhetővé válik. Bezárhatod ezt a lapot, és visszatérhetsz az alkalmazásba." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Az eszközöd megkér, hogy ments el egy frissített jelszókulcsot ehhez: {name}. Ez felváltja a régit." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Az eszközöd megkér, hogy ments el egy frissített jelszókulcsot ehhez: {name}. Használd ugyanazt a telefont vagy biztonsági kulcsot, amelyet az előbb használtál." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Nagyítás" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Nagyítás" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/id/messages.po b/fluxer_app/src/features/i18n/locales/id/messages.po index 5a39fd9e0..2d4b03609 100644 --- a/fluxer_app/src/features/i18n/locales/id/messages.po +++ b/fluxer_app/src/features/i18n/locales/id/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {anggota} other {anggota}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, other {# sebutan}}" @@ -2370,8 +2370,8 @@ msgstr "6 bulan" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "Kode 6 digit" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Penggantian akun & premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Akses akun" @@ -2807,7 +2807,7 @@ msgstr "Pelanggan bulanan aktif (pembatalan terjadwal)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Tambahkan akun untuk melanjutkan." msgid "Add an email and password to your account first." msgstr "Tambahkan email dan kata sandi ke akunmu terlebih dahulu." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Tambahkan lapisan keamanan ekstra ke akunmu" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Tambahkan bot ke tujuan" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Tambah saluran" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Tambahkan reaksi baru ke pesan." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Tambah catatan" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Tambah penggantian" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Tambahkan passkey" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Tambahkan reaksi" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Tambahkan ke kamus" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Tambahkan ke favorit" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Ditambahkan ke GIF favorit" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Ditambahkan ke favorit" @@ -3296,11 +3296,11 @@ msgstr "Ditambahkan ke favorit" msgid "Added to saved media" msgstr "Ditambahkan ke media tersimpan" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Ditambahkan: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Ditambahkan: {createdDate} • terakhir digunakan: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Semua bahasa" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Semua pesan" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Sudah dihapus" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Sudah punya akun?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Zoom aplikasi" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Tingkat zoom aplikasi" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Setujui" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Setujui aplikasi ini dari aplikasi {productName} yang sudah kamu gunakan. Tidak perlu kata sandi." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Yakin ingin menghapus kategori \"{categoryName}\"? Tindakan ini tidak bisa dibatalkan." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Yakin ingin menghapus passkey <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Yakin ingin menghapus lampiran ini? Tindakan ini tidak dapat dibatalkan msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Yakin ingin menghapus komunitas ini? Tindakan ini tidak bisa dibatalkan. Semua saluran, pesan, dan pengaturan akan dihapus secara permanen." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Yakin ingin menghapus passkey ini?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Tanyakan sebelum memulai panggilan" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Minta passkey setelah kata sandimu saat kamu masuk" @@ -4690,7 +4690,7 @@ msgstr "Lampiran" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Audio" @@ -4851,14 +4851,14 @@ msgstr "Autentikasi" msgid "Authenticator" msgstr "Autentikator" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Aplikasi autentikator" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Kode autentikator" @@ -4928,7 +4928,7 @@ msgstr "Aplikasi yang diotorisasi" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Sedang tidak di tempat" msgid "Back" msgstr "Kembali" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Kembali ke {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Kembali ke peran" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Kembali ke pengaturan" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Kembali ke halaman masuk" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Kode cadangan" @@ -5351,7 +5356,7 @@ msgstr "Kode cadangan" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Batas bookmark tercapai" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Panggilan" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera mati" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera aktif" @@ -6364,9 +6369,9 @@ msgstr "Tidak bisa mengunggah file di sini" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Tidak bisa mengunggah file di sini" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Ganti emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Ubah nama panggilan teman" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Ubah nama panggilan grup saya" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Ubah nama panggilan" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Tindakan saluran" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Saluran ditambahkan ke favorit" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Saluran dibuat" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Debug saluran" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Saluran dihapus" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Catatan saluran" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Saluran dihapus dari favorit" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Pilih warna aksen profilmu" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Klaim akun" @@ -7715,7 +7720,7 @@ msgstr "Klaim akunmu dan verifikasi emailmu untuk mengirim laporan." msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Klaim akunmu dengan menambahkan email dan kata sandi. Kami akan mengirimkan kode verifikasi untuk mengonfirmasi emailmu sebelum selesai." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Klaim akunmu untuk mengakses fitur keamanan seperti autentikasi dua faktor dan passkey." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Hapus CSS cepat?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Hapus pencarian" @@ -8103,7 +8108,7 @@ msgstr "Kloning dimatikan" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Tutup" @@ -8160,11 +8165,9 @@ msgstr "Tutup ke bilah menu" msgid "Close to tray" msgstr "Tutup ke baki" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Tutup jendela" @@ -8456,7 +8459,7 @@ msgstr "Komunikasi" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Debug komunitas" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Default komunitas" @@ -8577,7 +8580,7 @@ msgstr "Catatan anggota komunitas" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Anggota komunitas" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Level notifikasi komunitas" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Pengaturan notifikasi komunitas" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Perbandingan" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Selesaikan pemeriksaan konten dewasa" @@ -9093,7 +9096,7 @@ msgstr "Koneksi: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Menu konteks dapat dibuka dengan klik kiri (pada tombol) atau klik kanan #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Lanjutkan" msgid "Continue to checkout" msgstr "Lanjutkan ke pembayaran" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Lanjutkan untuk membuat passkey untuk {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Lanjutkan melaporkan komunitas" msgid "Continue to report user" msgstr "Lanjutkan melaporkan pengguna" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Lanjutkan dengan passkey" @@ -9238,11 +9238,6 @@ msgstr "Lanjutkan dengan passkey" msgid "Continue with SSO" msgstr "Lanjutkan dengan SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Lanjutkan dengan passkey-mu untuk masuk ke {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Mengoordinasikan penyerangan, pengeroyokan, atau pelecehan terhadap oran #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Disalin" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Salin ID kategori" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Salin ID saluran" @@ -9421,12 +9416,12 @@ msgstr "Salin tautan saluran" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Salin kode" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Salin ID komunitas" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Salin URL undangan" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Salin pesan" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Salin ID pesan" @@ -9570,7 +9565,7 @@ msgstr "Salin ID pesan" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Salin URL stiker" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Salin kunci penyiapan ke aplikasi autentikatormu." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Salin ID pengguna" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Salin nama pengguna" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Tidak dapat menghapus aplikasi" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Tidak dapat menghapus passkey" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Tidak dapat mengirim undangan" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Tidak dapat mengirim undangan. Coba lagi." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Tidak dapat memperbarui bypass penekanan sebutan" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Tidak dapat memperbarui autentikasi dua faktor passkey" @@ -10206,6 +10201,11 @@ msgstr "Tidak dapat memperbarui teks alternatif. Silakan coba lagi." msgid "Couldn't update voice activity sharing right now" msgstr "Tidak dapat memperbarui berbagi aktivitas suara sekarang" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Tidak dapat memperbarui passkey kamu. Coba lagi." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Tidak dapat mengunggah avatar" msgid "Couldn't upload banner" msgstr "Tidak dapat mengunggah banner" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Tidak dapat menggunakan passkey-mu di jendela pop-up. Coba lagi." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Tidak dapat memverifikasi kode tersebut. Coba lagi." msgid "Couldn't verify the connection" msgstr "Tidak dapat memverifikasi koneksi" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Tidak dapat memverifikasi dengan passkey. Coba lagi." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Nyaman" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Buat" @@ -10298,7 +10293,7 @@ msgstr "Buat grup baru dengan {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Buat aplikasi" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Buat kategori" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Buat saluran" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Buat komunitas" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Teks peringatan khusus" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Kustom…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Debug" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Saluran debug" @@ -11164,7 +11159,7 @@ msgstr "Pesan debug" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Debug pengguna" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Hapus {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Hapus akun" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Hapus aplikasi" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Hapus lampiran" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Hapus media" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Hapus pesan" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Hapus pesan anggota lain. Penyematan diatur secara terpisah." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Hapus passkey" @@ -11701,7 +11696,7 @@ msgstr "Jelaskan tentang komunitasmu" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Deskripsi" @@ -11966,7 +11961,7 @@ msgstr "Perangkat:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Input langsung" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Pesan langsung" @@ -12050,7 +12045,7 @@ msgstr "Pratinjau pesan langsung" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Pesan langsung" @@ -12077,14 +12072,14 @@ msgstr "Unggahan langsung aktif" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Nonaktifkan" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Nonaktifkan akun" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Terputus" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Komunitas yang bisa ditemukan" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Diskriminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Tutup" @@ -12477,7 +12472,7 @@ msgstr "Pengaturan DM & permintaan pertemanan" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM ditutup" @@ -12607,7 +12602,7 @@ msgstr "Tidak memblokir. Kamu bisa membukanya lagi nanti." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domain" @@ -12697,7 +12692,7 @@ msgstr "Klik ganda seseorang untuk menonton streaming mereka." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Belanda" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "misalnya, YubiKey, iPhone, komputer kantor" @@ -13092,7 +13087,7 @@ msgstr "Edit pengaturan global seperti nama, deskripsi, dan ikon." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Edit grup" @@ -13123,7 +13118,7 @@ msgstr "Edit media" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Edit pesan" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Memenuhi syarat untuk pengembalian dana hingga {windowEndsOn}. Ini juga akan langsung membatalkan langgananmu." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Email" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji diperbarui" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emoji" @@ -13525,7 +13520,7 @@ msgstr "Favorit kosong" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Aktifkan" @@ -13680,7 +13675,7 @@ msgstr "Aktifkan notifikasi push seluler" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Aktifkan notifikasi" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Aktifkan integrasi yang kredensialnya sudah kamu konfigurasikan. Hanya layanan yang tersedia yang ditampilkan." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Aktifkan autentikasi dua faktor" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Inggris (AS)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Ditingkatkan" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Masukkan email baru" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Masukkan salah satu kode cadanganmu jika kamu tidak bisa menggunakan passkey-mu." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Masukkan salah satu kode cadanganmu." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Masukkan teks" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Masukkan kode {digitCount} digit dari aplikasi autentikatormu atau kode cadangan." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Masukkan kode sebelum melanjutkan." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Masukkan kode dari aplikasi autentikatormu." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Masukkan namamu" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Masukkan kata sandimu." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Kedaluwarsa pada <0>{expiredDate}. <1/> tidak lagi aktif. Kamu bisa berlangganan kembali kapan saja." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Kedaluwarsa" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Pelengkapan otomatis ekspresi" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Kategori pemilih ekspresi" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Gagal menyiapkan emoji" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Gagal memproses gambar yang dipotong. Coba lagi." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Gagal memulai SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Gagal beralih akun" @@ -15053,7 +15048,7 @@ msgstr "Favorit" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favorit" @@ -15268,6 +15263,11 @@ msgstr "Selesaikan penyiapan akun" msgid "Finish account setup first" msgstr "Selesaikan penyiapan akun dulu" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Selesaikan di tab baru. Jika kamu menutupnya, tekan Lanjutkan dengan passkey lagi." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Nama folder" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Pengaturan folder" @@ -15479,7 +15479,7 @@ msgstr "Untuk saya" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Untuk pemeriksaan ini, kamu mengirimkan SMS kepada kami, bukan menerima SMS dari kami." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Demi keamananmu, konfirmasi dulu bahwa ini benar kamu untuk melanjutkan." @@ -15606,7 +15606,7 @@ msgstr "Lupa kata sandi" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Lupa kata sandimu?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Hanya teman dan komunitas kecil" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Teman dari teman" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Umum" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Jerman" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Dapatkan {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URL GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Pintasan global" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Kembali" @@ -16374,6 +16374,11 @@ msgstr "Kembali" msgid "Go back and enter a valid email." msgstr "Kembali dan masukkan email yang valid." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Kembali ke {productName} untuk melanjutkan." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Sembunyikan catatan kaki kedaluwarsa" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Sembunyikan favorit" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Sembunyikan yang dibisukan" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Sembunyikan saluran yang dibisukan" @@ -17358,7 +17363,7 @@ msgstr "Identitas" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Tidak aktif" @@ -17818,7 +17823,7 @@ msgstr "Profil tidak pantas" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Kotak masuk" @@ -17867,7 +17872,7 @@ msgstr "Sertakan ID komunitas." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Pratinjau halaman undangan" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Undang orang" @@ -18456,7 +18461,7 @@ msgstr "Pengundang:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Undangan" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Gabung panggilan" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Gabung komunitas" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Bergabung dengan {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Lompat" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Keluarkan anggota dari komunitas ini." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Keluarkan anggota" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Tinggalkan panggilan" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Tinggalkan komunitas" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Pembuat tautan" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Tautan disalin ke papan klip" @@ -19859,8 +19864,8 @@ msgstr "Malware atau tautan berbahaya" msgid "Malware, credential theft, or harmful files." msgstr "Malware, pencurian kredensial, atau file berbahaya." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Kelola" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Kelola akun" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Kelola aplikasi dan perangkat yang memiliki akses ke akunmu" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Langsung tandai semua saluran kotak masuk yang belum dibaca sebagai sudah dibaca, tanpa meminta konfirmasi" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Tandai sudah dibaca" @@ -20021,7 +20026,7 @@ msgstr "Tandai sebagai spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Tandai sebagai belum dibaca" @@ -20169,7 +20174,7 @@ msgstr "Komunitas dewasa" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Konten dewasa" @@ -20315,7 +20320,7 @@ msgstr "Mengukur…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "anggota" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Anggota" @@ -20616,7 +20621,7 @@ msgstr "Sebut peran ini?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Sebutan" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Tindakan media lainnya" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Opsi lainnya" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Bisukan panggilan" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Bisukan kategori" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Bisukan komunitas" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Bisukan komunitas" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Bisukan suara saat masuk" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Bisukan favorit" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Nama minimal 2 karakter" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Beri nama passkey" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formulir nama passkey" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Butuh akun?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Tidak pernah" @@ -22276,7 +22281,7 @@ msgstr "Terbaru dulu" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Berikutnya" @@ -22905,7 +22910,7 @@ msgstr "Tidak ada pengguna yang ditemukan" msgid "No verification is required." msgstr "Tidak perlu verifikasi." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Metode verifikasi tidak tersedia" @@ -23038,11 +23043,13 @@ msgstr "Tidak ditemukan" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Nanti saja" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Catatan (hanya terlihat olehmu)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Tidak ada" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Penggantian notifikasi" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Pengaturan notifikasi" @@ -23152,7 +23159,7 @@ msgstr "Volume notifikasi" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Nonaktif" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Oke" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Hanya anggota dengan izin \"{manageCommunityPermissionLabel}\" yang dapat mengubah ini." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Hanya sebutan" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Buka {labelText} di pengaturan" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Buka {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Pesan langsung yang terbuka" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Buka DM" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Buka faktur {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Buka tautan" @@ -23850,7 +23857,7 @@ msgstr "Buka pengalih cepat" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Buka pengaturan" @@ -23935,11 +23942,6 @@ msgstr "Buka pop-out studio tema" msgid "Open theme studio…" msgstr "Buka studio tema…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Buka jendela ini dari {productName} untuk menggunakan passkey-mu." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Opsi" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Passkey" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Nama passkey" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Passkey diperbarui" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Passkey" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Passkey memerlukan bundel macOS yang ditandatangani dengan ID aplikasi yang valid. Instal klien desktop yang ditandatangani, lalu coba lagi." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Kata sandi" msgid "Password changed" msgstr "Kata sandi diubah" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Pengelola kata sandi mungkin tidak menawarkan passkey-mu di alamat web ini. Sebagai gantinya, coba di jendela pop-up di alamat lama." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Tempel tautan pesan." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Kamus pribadi" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Catatan pribadi" @@ -24885,7 +24887,7 @@ msgstr "Sematkan DM grup" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Sematkan pesan" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "disematkan" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "DM tersemat" @@ -25020,7 +25022,7 @@ msgstr "Admin platform" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Putar" @@ -25318,6 +25320,11 @@ msgstr "Tekan tombol keyboard, mouse, atau gamepad untuk menetapkan. Escape untu msgid "Press a shortcut…" msgstr "Tekan pintasan…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Tekan Lanjutkan untuk menggunakan passkey kamu." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Bahasa utama" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Navigasi utama" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Kebijakan privasi" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Pengaturan privasi" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Tips pro:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Lanjutkan" @@ -26090,7 +26097,7 @@ msgstr "Bereaksi dengan {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Membuat ulang akan membatalkan token saat ini. Perbarui kode apa pun yang menggunakan nilai lama." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Daftar" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Passkey terdaftar" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Hapus banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Hapus bookmark" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Hapus dari kamus" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Hapus dari favorit" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Dihapus dari GIF favorit" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Dihapus dari favorit" @@ -27032,7 +27039,7 @@ msgstr "Menghapus izin dapat membatasi fitur bot." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Menghapus batas waktu akan membuat <0>{targetUserTag} dapat kembali mengirim pesan, bereaksi, dan bergabung ke saluran suara." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Ganti nama" @@ -27119,7 +27126,7 @@ msgstr "Balasan" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Balas" @@ -27209,7 +27216,7 @@ msgstr "Laporkan masalah" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Laporkan pesan" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Wajibkan 2FA untuk tindakan moderasi" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Wajibkan passkey sebagai faktor keduamu" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Tautan setel ulang tidak valid atau sudah kedaluwarsa" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Setel ulang status persetujuan konten dewasa" @@ -27880,7 +27887,7 @@ msgstr "Gambar terbalik" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Pencarian gambar terbalik" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Tinjau dan konfirmasi" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Tinjau aplikasi yang dapat mengakses akunmu." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Tinjau pembelian sebelumnya dan opsi pengembalian dana" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Tinjau perangkat yang sedang masuk dan keluar dari sesi yang tidak kamu kenali." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Peran diperbarui" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Peran" @@ -28261,7 +28268,7 @@ msgstr "Saturasi" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Cakupan" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Cakupan" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Pembaca layar" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Cari saluran, orang, atau komunitas" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Cari teman" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Cari teks yang dipilih" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Cari pengaturan" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Cari pengaturan…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Keamanan" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Fitur keamanan" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Kunci keamanan" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Kunci keamanan / passkey" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Media sensitif" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Terkirim" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Sesi" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Sesi untuk {identifier} telah berakhir. Masuk lagi." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Mengatur level untuk setiap efek suara. Penggantian per suara mengabaikan ini." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Pengaturan dibuka." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Bagian pengaturan" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Bilah sisi" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Masuk" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Masuk untuk mengklaim hadiahmu" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Masuk melalui browser" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Masuk dengan passkey" @@ -30666,7 +30673,7 @@ msgstr "Masuk dengan penyedia single sign-on organisasimu." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Keluar" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Detail masuk" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Alur masuk" @@ -31189,7 +31196,7 @@ msgstr "Beberapa pengguna tidak dapat ditambahkan" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Terjadi kesalahan" @@ -31374,7 +31381,7 @@ msgstr "Volume suara" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Suara" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Mulai unggah lampiran segera setelah ditambahkan ke kotak pesan" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Mulai panggilan video" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Mulai panggilan suara" @@ -31899,7 +31906,7 @@ msgstr "stiker" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Stiker: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Stiker" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Berhenti memercayai semua tautan?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Hentikan penggunaan passkey untuk autentikasi dua faktor?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Sembunyikan semua sebutan peran" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Sembunyikan sematan" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "saluran teks" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Saluran teks" @@ -33055,7 +33062,7 @@ msgstr "Kirim SMS ke kami dari ponselmu" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Teks ke suara" @@ -33119,6 +33126,11 @@ msgstr "Proses itu tidak selesai. Beberapa komunitas mungkin sudah ditinggalkan, msgid "That did not go through. Nothing changed. Try again." msgstr "Itu tidak berhasil. Tidak ada yang berubah. Coba lagi." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Tidak berhasil. Coba lagi atau batalkan." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Itu bukan warna yang valid. Coba hex, rgb(), hsl(), atau nama warna CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Gambar itu tidak dapat digunakan. Coba file lain." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Gambar tidak valid. Coba gambar lain." @@ -34035,11 +34047,11 @@ msgstr "Ini adalah deskripsi opsi kedua" msgid "This is the third option description" msgstr "Ini adalah deskripsi opsi ketiga" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Ini passkey terakhirmu dan passkey adalah faktor keduamu. Menghapusnya akan menonaktifkan autentikasi dua faktor untuk akunmu, dan kode cadanganmu saat ini akan berhenti berfungsi." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Ini passkey terakhirmu. Setelah dihapus, kamu tidak bisa lagi menggunakan passkey sebagai faktor keduamu." @@ -34154,16 +34166,6 @@ msgstr "Suara masuk peserta ini dibisukan" msgid "This participant was deafened by moderators" msgstr "Suara masuk peserta ini dibisukan oleh moderator" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Permintaan passkey ini tidak dapat diverifikasi. Tutup jendela ini dan coba lagi." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Waktu permintaan passkey ini telah habis. Tutup jendela ini dan coba lagi." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Ini akan menghapus semua domain tepercaya. Kamu akan melihat peringatan msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Ini akan menghapus semua pintasan khusus dan mengaktifkan kembali semua pintasan bawaan. Tindakan ini tidak dapat dibatalkan." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Permintaan ini telah kedaluwarsa. Kembali dan coba lagi." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Tautan setel ulang ini telah kedaluwarsa. Tautan setel ulang berlaku selama 1 jam. Silakan minta yang baru." @@ -34807,7 +34814,7 @@ msgstr "Transfer kepemilikan grup ke {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Transfer kepemilikan" @@ -34823,7 +34830,7 @@ msgstr "Kepemilikan ditransfer ke {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Terjemahkan" @@ -34980,7 +34987,7 @@ msgstr "Coba nama variabel lain atau hapus pencarian." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Coba lagi" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Coba lagi" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Coba lagi sebentar lagi." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Coba cari sesuatu seperti \"tema\", \"notifikasi\", atau \"privasi\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Coba kunci keamanan/passkey saja" @@ -35088,7 +35095,7 @@ msgstr "Turki" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Matikan" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Matikan berbagi audio untuk sumber ini atau coba lagi sebentar lagi." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Matikan kamera" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Nonaktifkan privasi streaming sebelum melihat detail login atau keamanan akun." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Aktifkan" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Autentikasi dua faktor" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Autentikasi dua faktor" @@ -35288,7 +35295,7 @@ msgstr "Autentikasi dua faktor dinonaktifkan" msgid "Two-factor authentication enabled" msgstr "Autentikasi dua faktor diaktifkan" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Autentikasi dua faktor diaktifkan" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Buka blokir pengguna" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Tanpa kategori" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Garis bawahi tautan situs web" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Mengerti" @@ -35643,7 +35650,7 @@ msgstr "Cadangan universal. Kualitas terendah, tapi berfungsi di mana saja." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Aktifkan mikrofon di semua perangkat" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Bunyikan kategori" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Bunyikan komunitas" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Bunyikan komunitas" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Bunyikan DM" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Bunyikan favorit" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Lepas sematan" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Lepas sematan pesan" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Lepas sematan pesan ini?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Sematan DM dilepas" @@ -36193,6 +36200,11 @@ msgstr "Perbarui email" msgid "Update my status" msgstr "Perbarui status saya" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Perbarui passkey" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Perbarui batas waktu" msgid "Update your own nickname." msgstr "Perbarui nama panggilanmu sendiri." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Perbarui passkey kamu" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Gunakan modal khusus untuk menetapkan tanggal batas riwayat pesan bagi a msgid "Use a different email address and verify it with a code." msgstr "Gunakan alamat email lain dan verifikasi dengan kode." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Gunakan passkey dari pengelola kata sandi" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Gunakan nilai sebenarnya" msgid "Use alternative method" msgstr "Gunakan metode alternatif" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Gunakan aplikasi autentikator untuk membuat kode autentikasi dua faktor" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Gunakan hanya jika jelas melanggar aturan {productName} dan tidak sesuai dengan pilihan di atas." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Gunakan passkey untuk autentikasi dua faktor?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Gunakan passkey untuk masuk tanpa kata sandi" @@ -36824,10 +36836,10 @@ msgstr "Gunakan aktivitas suara" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Gunakan pemeriksa ejaan sistem operasimu jika tersedia. Jika tidak, gunakan kamus dalam aplikasi {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" -msgstr "Gunakan passkey-mu" +msgstr "Gunakan passkey Anda" #. Description text in the entrance sound section. #: src/features/user/components/modals/tabs/components/EntranceSoundSection.tsx:66 @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Kontrol pengguna" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Debug pengguna" @@ -36972,7 +36984,7 @@ msgstr "Volume pengguna" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verifikasi dibatalkan" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Kode verifikasi" @@ -37185,7 +37197,7 @@ msgstr "Email verifikasi telah dikirim. Periksa kotak masukmu." msgid "Verification expired" msgstr "Verifikasi kedaluwarsa" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Komunitas terverifikasi" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verifikasi" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Verifikasi koneksi" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Verifikasi email" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formulir verifikasi identitas" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Verifikasi bahwa ini kamu" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Verifikasi alamat emailmu untuk mengirim permintaan pertemanan." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Verifikasi emailmu sebelum menambahkan passkey." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Verifikasi emailmu sebelum menambahkan aplikasi autentikator." @@ -37571,7 +37583,7 @@ msgstr "Lihat dan kelola pengguna yang diblokir." msgid "View and manage every webhook configured across your community." msgstr "Lihat dan kelola setiap webhook yang dikonfigurasi di seluruh komunitasmu." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Lihat dan kelola kode cadanganmu untuk pemulihan akun" @@ -37605,7 +37617,7 @@ msgstr "Lihat saluran" msgid "View channel members" msgstr "Lihat anggota saluran" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Lihat kode" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Lihat paket" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Lihat profil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "saluran suara" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Saluran suara" @@ -38073,7 +38085,7 @@ msgstr "Dibatalkan" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Tunggu di sini" msgid "Waiting for connection..." msgstr "Menunggu koneksi..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Menunggu passkey…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Tonton" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Tonton siaran" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Pratinjau situs web" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Selamat datang kembali" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Kamu belum bergabung dengan komunitas mana pun." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Kamu memblokir {userName}. Kamu tidak akan dapat mengirim pesan kecuali kamu membuka blokirnya." @@ -39101,6 +39113,11 @@ msgstr "Kamu dapat membatalkan proses penghapusan dalam 14 hari" msgid "You can close this modal. The import will continue in the background." msgstr "Kamu bisa menutup jendela ini. Impor akan berlanjut di latar belakang." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Kamu dapat menutup tab ini" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Kamu bisa menutup tab ini dan kembali ke aplikasi." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Kamu tidak bisa mengirim permintaan pertemanan ke diri sendiri." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Kamu tidak dapat mengirim pesan di saluran ini." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Kamu masih perlu menyelesaikan langkah email." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Kamu tidak akan lagi diminta memasukkan passkey setelah kata sandimu. Aplikasi autentikatormu tetap menjadi faktor keduamu." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Kamu harus masuk lagi di semua perangkat yang dikeluarkan" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Kamu perlu salah satu passkey-mu untuk masuk di perangkat baru. Jika kamu kehilangan semua passkey, kamu bisa terkunci dari akunmu secara permanen. Kode cadangan akan disimpan untukmu supaya kamu tetap punya cara untuk masuk." @@ -39918,12 +39935,12 @@ msgstr "Akunmu terlalu baru untuk mengirim pesan di komunitas ini." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Permintaan akunmu menunggu persetujuan. Kamu dapat masuk setelah admin menyetujuinya." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Akunmu memerlukan autentikasi multifaktor, tetapi tidak ada metode yang didukung di perangkat ini. Masuk di perangkat yang punya aplikasi autentikator atau kunci keamananmu, atau hubungi dukungan." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Akunmu tidak akan lagi dilindungi autentikasi dua faktor saat kamu masuk dengan kata sandi. Kamu juga akan kehilangan izin yang lebih tinggi di komunitas yang mewajibkan autentikasi dua faktor." @@ -39941,16 +39958,6 @@ msgstr "Tindakanmu tidak dapat diselesaikan karena ditandai oleh sistem keamanan msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Pengajuanmu sedang ditinjau. Kamu masih bisa memperbarui detail pendaftaranmu atau menarik pengajuannya." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Browsermu memblokir jendela pop-up passkey. Izinkan pop-up untuk situs ini dan coba lagi." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Browsermu tidak mendukung passkey di domain ini. Perbarui browsermu, atau masuk dengan kata sandi dan kode autentikasi dua faktormu." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Komunitasmu perlu memiliki setidaknya {minMemberCount, plural, other {# msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Kartu kreditmu sudah diperiksa. Jika kartunya valid, konten dewasa akan segera terbuka. Kamu bisa menutup tab ini dan kembali ke aplikasi." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Perangkatmu akan meminta kamu menyimpan passkey yang diperbarui untuk {name}. Passkey ini akan menggantikan yang lama." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Perangkatmu akan meminta kamu menyimpan passkey yang diperbarui untuk {name}. Gunakan ponsel atau kunci keamanan yang sama dengan yang baru saja kamu gunakan." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Perbesar" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/it/messages.po b/fluxer_app/src/features/i18n/locales/it/messages.po index 43e2b6063..41ae4fb49 100644 --- a/fluxer_app/src/features/i18n/locales/it/messages.po +++ b/fluxer_app/src/features/i18n/locales/it/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {membro} other {membri}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# menzione} many {# menzioni} other {# menzioni}}" @@ -2370,8 +2370,8 @@ msgstr "6 mesi" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "Codice a 6 cifre" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Override per account e Premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Accesso all’account" @@ -2807,7 +2807,7 @@ msgstr "Abbonato mensile attivo (annullamento programmato)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Aggiungi un account per continuare." msgid "Add an email and password to your account first." msgstr "Prima aggiungi un'email e una password al tuo account." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Aggiungi un ulteriore livello di sicurezza al tuo account" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Aggiungi il bot a una destinazione" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Aggiungi canale" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Aggiungi nuove reazioni ai messaggi." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Aggiungi nota" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Aggiungi eccezione" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Aggiungi passkey" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Aggiungi reazione" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Aggiungi al dizionario" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Aggiungi ai preferiti" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Aggiunta alle GIF preferite" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Aggiunto ai preferiti" @@ -3296,11 +3296,11 @@ msgstr "Aggiunto ai preferiti" msgid "Added to saved media" msgstr "Aggiunto ai media salvati" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Aggiunto: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Aggiunto: {createdDate} • ultimo utilizzo: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Tutte le lingue" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Tutti i messaggi" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Già eliminato" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Hai già un account?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Zoom app" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Livello zoom app" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Approva" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Approva questa app dall'app {productName} che usi già. Non serve la password." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Vuoi davvero eliminare la categoria \"{categoryName}\"? Questa azione non può essere annullata." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Vuoi davvero eliminare la passkey <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Vuoi davvero eliminare questo allegato? Questa azione non può essere an msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Vuoi davvero eliminare questa community? Questa azione non può essere annullata. Tutti i canali, i messaggi e le impostazioni verranno eliminati definitivamente." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Vuoi davvero eliminare questa passkey?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Chiedi prima di avviare le chiamate" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Richiedi una passkey dopo la password quando accedi" @@ -4690,7 +4690,7 @@ msgstr "Allegati" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Audio" @@ -4851,14 +4851,14 @@ msgstr "Autenticazione" msgid "Authenticator" msgstr "Autenticatore" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "App di autenticazione" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Codice dell’app di autenticazione" @@ -4928,7 +4928,7 @@ msgstr "Applicazioni autorizzate" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Assente in questo momento" msgid "Back" msgstr "Indietro" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Torna a {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Torna ai ruoli" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Torna alle impostazioni" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Torna all'accesso" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Codice di backup" @@ -5351,7 +5356,7 @@ msgstr "Codice di backup" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Limite segnalibri raggiunto" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Chiamate" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Fotocamera disattivata" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Fotocamera attiva" @@ -6364,9 +6369,9 @@ msgstr "Impossibile caricare file qui" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Impossibile caricare file qui" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Cambia emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Cambia soprannome amico" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Cambia il mio soprannome nel gruppo" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Cambia soprannome" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Azioni canale" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Canale aggiunto ai preferiti" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Canale creato" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Debug canale" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Canale eliminato" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Record canale" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Canale rimosso dai preferiti" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Scegli il colore accento del tuo profilo" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Completa la registrazione dell’account" @@ -7715,7 +7720,7 @@ msgstr "Completa la registrazione del tuo account e verifica la tua email per in msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Completa la registrazione del tuo account aggiungendo un’email e una password. Prima di terminare, ti invieremo un codice per verificare la tua email." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Completa la registrazione del tuo account per accedere a funzionalità di sicurezza come l’autenticazione a due fattori e le passkey." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Cancellare i CSS rapidi?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Cancella ricerca" @@ -8103,7 +8108,7 @@ msgstr "Clonazione disattivata" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Chiudi" @@ -8160,11 +8165,9 @@ msgstr "Chiudi sulla barra dei menu" msgid "Close to tray" msgstr "Chiudi nell’area di notifica" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Chiudi finestra" @@ -8456,7 +8459,7 @@ msgstr "Comunicazione" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Debug community" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Predefinito della community" @@ -8577,7 +8580,7 @@ msgstr "Record membro della community" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Membri della community" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Livello notifiche community" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Impostazioni notifiche community" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Confronto" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Completa la verifica dei contenuti per adulti" @@ -9093,7 +9096,7 @@ msgstr "Connessione: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "I menu contestuali si aprono con un clic sinistro (sui pulsanti) o destr #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Continua" msgid "Continue to checkout" msgstr "Continua al pagamento" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Continua per creare una passkey per {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Continua per segnalare la community" msgid "Continue to report user" msgstr "Continua per segnalare l’utente" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Continua con passkey" @@ -9238,11 +9238,6 @@ msgstr "Continua con passkey" msgid "Continue with SSO" msgstr "Continua con SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Continua con la tua passkey per accedere a {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Coordina raid, attacchi organizzati o molestie contro persone o communit #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Copiato" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Copia ID categoria" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Copia ID canale" @@ -9421,12 +9416,12 @@ msgstr "Copia link canale" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Copia codice" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Copia ID community" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Copia link d'invito" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Copia messaggio" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Copia ID messaggio" @@ -9570,7 +9565,7 @@ msgstr "Copia ID messaggio" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Copia URL sticker" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Copia la chiave di configurazione nell'app di autenticazione." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Copia ID utente" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Copia nome utente" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Impossibile eliminare l'applicazione" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Impossibile eliminare la passkey" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Impossibile inviare l'invito" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Impossibile inviare l'invito. Riprova." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Impossibile aggiornare l'esclusione della soppressione delle menzioni" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Impossibile aggiornare l'autenticazione a due fattori con passkey" @@ -10206,6 +10201,11 @@ msgstr "Non è stato possibile aggiornare il testo alternativo. Riprova." msgid "Couldn't update voice activity sharing right now" msgstr "Impossibile aggiornare la condivisione dell'attività vocale in questo momento" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Impossibile aggiornare la tua passkey. Riprova." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Impossibile caricare l'avatar" msgid "Couldn't upload banner" msgstr "Impossibile caricare il banner" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Impossibile usare la tua passkey nella finestra popup. Riprova." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Impossibile verificare il codice. Riprova." msgid "Couldn't verify the connection" msgstr "Impossibile verificare la connessione" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Impossibile verificare con la passkey. Riprova." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Ampia" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Crea" @@ -10298,7 +10293,7 @@ msgstr "Crea un nuovo gruppo con {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Crea applicazione" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Crea categoria" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Crea canale" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Crea community" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Testo di avviso personalizzato" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Personalizzato…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Debug" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Debug del canale" @@ -11164,7 +11159,7 @@ msgstr "Debug del messaggio" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Debug utente" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Elimina {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Elimina account" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Elimina applicazione" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Elimina allegato" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Elimina media" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Elimina messaggio" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Elimina i messaggi degli altri membri. Il permesso di fissare i messaggi è gestito separatamente." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Elimina passkey" @@ -11701,7 +11696,7 @@ msgstr "Descrivi la tua community" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Descrizione" @@ -11966,7 +11961,7 @@ msgstr "Dispositivo:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Input diretto" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Messaggio diretto" @@ -12050,7 +12045,7 @@ msgstr "Anteprime messaggi diretti" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Messaggi diretti" @@ -12077,14 +12072,14 @@ msgstr "Caricamento diretto attivo" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Disattiva" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Disattiva account" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Disconnesso" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Community visibile in Scopri" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Discriminatore" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Ignora" @@ -12477,7 +12472,7 @@ msgstr "Impostazioni DM e richieste di amicizia" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM chiuso" @@ -12607,7 +12602,7 @@ msgstr "L’utente non verrà bloccato. Puoi riaprire il DM in seguito." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Dominio" @@ -12697,7 +12692,7 @@ msgstr "Fai doppio clic su qualcuno per guardare il suo stream." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Olandese" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "es. YubiKey, iPhone, computer di lavoro" @@ -13092,7 +13087,7 @@ msgstr "Modifica le impostazioni globali come nome, descrizione e icona." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Modifica gruppo" @@ -13123,7 +13118,7 @@ msgstr "Modifica media" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Modifica messaggio" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Idoneo per un rimborso fino al {windowEndsOn}. Questo annullerà anche immediatamente l'abbonamento." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Email" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji aggiornata" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emoji" @@ -13525,7 +13520,7 @@ msgstr "Preferiti vuoti" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Abilita" @@ -13680,7 +13675,7 @@ msgstr "Abilita le notifiche push su cellulare" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Abilita notifiche" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Abilita le integrazioni per cui hai configurato le credenziali. Vengono mostrati solo i servizi disponibili." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Abilita l'autenticazione a due fattori" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Inglese (Stati Uniti)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Migliorata" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Inserisci la nuova email" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Inserisci uno dei tuoi codici di backup se non riesci a usare la tua passkey." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Inserisci uno dei tuoi codici di backup." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Inserisci testo" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Inserisci il codice di {digitCount} cifre della tua app di autenticazione o un codice di backup." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Inserisci il codice prima di continuare." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Inserisci il codice dalla tua app di autenticazione." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Inserisci il tuo nome" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Inserisci la tua password." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Scaduto il <0>{expiredDate}. I <1/> non sono più attivi. Puoi abbonarti di nuovo in qualsiasi momento." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Scade" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Completamento automatico espressioni" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Categorie selettore espressioni" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Impossibile preparare le emoji" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Impossibile elaborare l'immagine ritagliata. Riprova." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Accesso SSO non riuscito" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Impossibile cambiare account" @@ -15053,7 +15048,7 @@ msgstr "Aggiunti ai preferiti" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Preferiti" @@ -15268,6 +15263,11 @@ msgstr "Completa la configurazione dell'account" msgid "Finish account setup first" msgstr "Completa prima la configurazione dell'account" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Completa nella nuova scheda. Se l'hai chiusa, premi di nuovo Continua con passkey." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Nome cartella" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Impostazioni cartella" @@ -15479,7 +15479,7 @@ msgstr "Per me" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Per questo controllo, devi inviarci un SMS anziché riceverne uno da noi." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Per la tua sicurezza, conferma la tua identità per continuare." @@ -15606,7 +15606,7 @@ msgstr "Password dimenticata" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Hai dimenticato la password?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Solo amici e piccole community" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Amici degli amici" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Generale" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Germania" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Ottieni {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URL GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Scorciatoia globale" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Indietro" @@ -16374,6 +16374,11 @@ msgstr "Indietro" msgid "Go back and enter a valid email." msgstr "Torna indietro e inserisci un'email valida." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Torna a {productName} per continuare." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Nascondi note sulla scadenza" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Nascondi preferiti" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Nascondi chat silenziate" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Nascondi canali silenziati" @@ -17358,7 +17363,7 @@ msgstr "Identità" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inattivo" @@ -17818,7 +17823,7 @@ msgstr "Profilo inappropriato" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Posta in arrivo" @@ -17867,7 +17872,7 @@ msgstr "Includi l'ID della community." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Anteprima pagina invito" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Invita persone" @@ -18456,7 +18461,7 @@ msgstr "Invitante:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Inviti" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Partecipa alla chiamata" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Unisciti alla community" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Iscritto a {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Vai a" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Espelli un membro da questa community." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Espelli membro" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Lascia la chiamata" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Lascia la community" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Generatore di link" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Link copiato negli appunti" @@ -19859,8 +19864,8 @@ msgstr "Malware o link pericolosi" msgid "Malware, credential theft, or harmful files." msgstr "Malware, furto di credenziali o file dannosi." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Gestisci" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Gestisci account" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Gestisci le app e i dispositivi che hanno accesso al tuo account" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Segna subito come letti tutti i canali non letti nella posta in arrivo, senza chiedere conferma" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Segna come letto" @@ -20021,7 +20026,7 @@ msgstr "Segna come spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Segna come non letto" @@ -20169,7 +20174,7 @@ msgstr "Community per adulti" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Contenuti per adulti" @@ -20315,7 +20320,7 @@ msgstr "Misurazione…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "membri" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Membri" @@ -20616,7 +20621,7 @@ msgstr "Menzionare questo ruolo?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Menzioni" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Altre azioni sui media" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Altre opzioni" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Silenzia chiamate" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Silenzia categoria" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Silenzia community" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Silenzia community" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Disattiva suono d'ingresso" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Silenzia preferiti" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Il nome deve contenere almeno 2 caratteri" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Dai un nome alla passkey" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Modulo nome passkey" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Ti serve un account?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Mai" @@ -22276,7 +22281,7 @@ msgstr "Più recenti prima" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Avanti" @@ -22905,7 +22910,7 @@ msgstr "Nessun utente trovato" msgid "No verification is required." msgstr "Nessuna verifica richiesta." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Nessun metodo di verifica disponibile" @@ -23038,11 +23043,13 @@ msgstr "Pagina non trovata" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Non ora" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Nota (visibile solo a te)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Niente" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Override notifiche" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Impostazioni notifiche" @@ -23152,7 +23159,7 @@ msgstr "Volume notifiche" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Disattivato" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Disconnesso" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "OK" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Solo i membri con l'autorizzazione \"{manageCommunityPermissionLabel}\" possono modificarlo." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Solo menzioni" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Apri {labelText} nelle impostazioni" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Apri {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "DM aperti" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Apri DM" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Apri fattura {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Apri link" @@ -23850,7 +23857,7 @@ msgstr "Apri la navigazione rapida" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Apri impostazioni" @@ -23935,11 +23942,6 @@ msgstr "Apri lo studio dei temi in una finestra separata" msgid "Open theme studio…" msgstr "Apri lo studio dei temi…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Apri questa finestra da {productName} per usare la tua passkey." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Opzioni" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Passkey" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Nome passkey" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Passkey aggiornata" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Passkey" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Le passkey richiedono un bundle macOS firmato con un identificatore di applicazione valido. Installa il client desktop firmato e riprova." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Password" msgid "Password changed" msgstr "Password modificata" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "I gestori di password potrebbero non offrire la tua passkey a questo indirizzo web. Prova invece in una finestra popup al vecchio indirizzo." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Incolla il link del messaggio." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Dizionario personale" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Note personali" @@ -24885,7 +24887,7 @@ msgstr "Fissa DM di gruppo" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Fissa messaggio" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "fissato" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "DM fissato" @@ -25020,7 +25022,7 @@ msgstr "Amministratore piattaforma" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Riproduci" @@ -25318,6 +25320,11 @@ msgstr "Premi un tasto, un pulsante del mouse o del gamepad per associare. Esc a msgid "Press a shortcut…" msgstr "Premi una combinazione di tasti…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Premi Continua per usare la tua passkey." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Lingua principale" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Navigazione principale" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Informativa sulla privacy" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Impostazioni privacy" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Suggerimento:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Continua" @@ -26090,7 +26097,7 @@ msgstr "Reagisci con {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "La rigenerazione invaliderà il token attuale. Aggiorna qualsiasi codice che usa il vecchio valore." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registrati" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Passkey registrate" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Rimuovi banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Rimuovi dai messaggi salvati" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Rimuovi dal dizionario" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Rimuovi dai preferiti" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Rimosso dalle GIF preferite" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Rimosso dai preferiti" @@ -27032,7 +27039,7 @@ msgstr "La rimozione dei permessi potrebbe limitare le funzionalità del bot." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Rimuovere il timeout consentirà a <0>{targetUserTag} di inviare messaggi, reagire e partecipare nuovamente ai canali vocali." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Rinomina" @@ -27119,7 +27126,7 @@ msgstr "Risposte" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Rispondi" @@ -27209,7 +27216,7 @@ msgstr "Segnala un problema" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Segnala messaggio" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Richiedi 2FA per le azioni di moderazione" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Richiedi una passkey come secondo fattore" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Link di reimpostazione non valido o scaduto" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Reimposta lo stato di accettazione dei contenuti per adulti" @@ -27880,7 +27887,7 @@ msgstr "Ricerca inversa di immagini" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Ricerca immagini inversa" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Rivedi e conferma" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Esamina le app che possono accedere al tuo account." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Rivedi acquisti precedenti e opzioni di rimborso" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Esamina i dispositivi connessi ed esegui il logout delle sessioni che non riconosci." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Ruolo aggiornato" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Ruoli" @@ -28261,7 +28268,7 @@ msgstr "Saturazione" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Ambito" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Ambiti di autorizzazione" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Lettore schermo" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Cerca canali, persone o community" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Cerca amici" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Cerca il testo selezionato" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Cerca nelle impostazioni" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Cerca nelle impostazioni…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Sicurezza" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Funzionalità di sicurezza" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Chiave di sicurezza" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Chiave di sicurezza/passkey" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Contenuti sensibili" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Inviato" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Sessione" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Sessione scaduta per {identifier}. Accedi di nuovo." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Imposta il livello per ogni effetto sonoro. Le impostazioni personalizzate per i singoli suoni ignorano questa impostazione." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Impostazioni aperte." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Sezioni delle impostazioni" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Barra laterale" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Accedi" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Accedi per riscattare il tuo regalo" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Accedi tramite browser" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Accedi con una passkey" @@ -30666,7 +30673,7 @@ msgstr "Accedi con il provider SSO della tua organizzazione." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Esci" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Dettagli accesso" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Flusso di accesso" @@ -31189,7 +31196,7 @@ msgstr "Alcuni utenti non possono essere aggiunti" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Qualcosa è andato storto" @@ -31374,7 +31381,7 @@ msgstr "Volume suoni" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Suoni" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Inizia a caricare gli allegati non appena vengono aggiunti all'area di testo del messaggio" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Avvia videochiamata" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Avvia chiamata vocale" @@ -31899,7 +31906,7 @@ msgstr "sticker" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Sticker: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Sticker" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Smettere di considerare attendibili tutti i link?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Smettere di usare le passkey per l'autenticazione a due fattori?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Disattiva tutte le menzioni di ruolo" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Nascondi anteprime" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "canale testuale" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Canale testuale" @@ -33055,7 +33062,7 @@ msgstr "Inviaci un SMS dal tuo telefono" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Sintesi vocale" @@ -33119,6 +33126,11 @@ msgstr "L’operazione non è terminata. Potresti aver già abbandonato alcune c msgid "That did not go through. Nothing changed. Try again." msgstr "Non è andato a buon fine. Non è cambiato nulla. Riprova." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Non ha funzionato. Riprova o annulla." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Non sembra un colore valido. Prova un valore esadecimale, rgb(), hsl() o un nome di colore CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Impossibile utilizzare quell'immagine. Prova con un file diverso." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "L'immagine non è valida. Provane un'altra." @@ -34035,11 +34047,11 @@ msgstr "Questa è la descrizione della seconda opzione" msgid "This is the third option description" msgstr "Questa è la descrizione della terza opzione" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Questa è la tua ultima passkey e le passkey sono il tuo secondo fattore. Eliminarla disattiverà l'autenticazione a due fattori per il tuo account e i tuoi attuali codici di backup smetteranno di funzionare." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Questa è la tua ultima passkey. Una volta eliminata, non potrai più usare una passkey come secondo fattore." @@ -34154,16 +34166,6 @@ msgstr "Questo partecipante ha l’audio disattivato" msgid "This participant was deafened by moderators" msgstr "I moderatori hanno disattivato l’audio di questo partecipante" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Non è stato possibile verificare questa richiesta passkey. Chiudi questa finestra e riprova." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Questa richiesta passkey è scaduta. Chiudi questa finestra e riprova." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Questo rimuove tutti i domini attendibili. Visualizzerai di nuovo l'avvi msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Verranno rimosse tutte le scorciatoie personalizzate e riattivate quelle predefinite. Questa azione non può essere annullata." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Questa richiesta è scaduta. Torna indietro e riprova." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Questo link di reimpostazione è scaduto. I link di reimpostazione durano 1 ora. Richiedine uno nuovo." @@ -34807,7 +34814,7 @@ msgstr "Trasferire la proprietà del gruppo a {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Trasferisci proprietà" @@ -34823,7 +34830,7 @@ msgstr "Proprietà trasferita a {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Traduci" @@ -34980,7 +34987,7 @@ msgstr "Prova un nome variabile diverso o cancella la ricerca." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Riprova" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Riprova" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Riprova tra un momento." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Prova a cercare qualcosa come \"tema\", \"notifiche\" o \"privacy\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Usa invece una chiave di sicurezza/passkey" @@ -35088,7 +35095,7 @@ msgstr "Turco" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Disattiva" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Disattiva la condivisione audio per questa origine o riprova tra un momento." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Disattiva fotocamera" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Disattiva la privacy in streaming prima di visualizzare i dettagli di accesso o di sicurezza dell'account." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Attiva" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Verifica in due passaggi" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Autenticazione a due fattori" @@ -35288,7 +35295,7 @@ msgstr "Autenticazione a due fattori disabilitata" msgid "Two-factor authentication enabled" msgstr "Autenticazione a due fattori abilitata" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Autenticazione a due fattori abilitata" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Sblocca utente" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Senza categoria" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Sottolinea i link dei siti web" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Capito" @@ -35643,7 +35650,7 @@ msgstr "Fallback universale. Qualità più bassa, ma funziona ovunque." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Riattiva il microfono su tutti i dispositivi" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Rimuovi il silenziamento della categoria" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Rimuovi il silenziamento delle community" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Rimuovi il silenziamento della community" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Rimuovi il silenziamento dei DM" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Rimuovi il silenziamento dei preferiti" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Rimuovilo dai messaggi fissati" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Rimuovi dai messaggi fissati" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Rimuovere questo messaggio dai messaggi fissati?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "DM non fissato" @@ -36193,6 +36200,11 @@ msgstr "Aggiorna email" msgid "Update my status" msgstr "Aggiorna il mio stato" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Aggiorna passkey" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Aggiorna timeout" msgid "Update your own nickname." msgstr "Aggiorna il tuo soprannome." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Aggiorna la tua passkey" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Usa una finestra dedicata per impostare una data limite per la cronologi msgid "Use a different email address and verify it with a code." msgstr "Usa un indirizzo email diverso e verificalo con un codice." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Usa una passkey del gestore di password" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Usa il valore effettivo" msgid "Use alternative method" msgstr "Usa un metodo alternativo" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Usa un’app di autenticazione per generare i codici per l’autenticazione a due fattori" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Usalo solo se viola chiaramente le regole di {productName} e non rientra nelle categorie precedenti." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Usare le passkey per l'autenticazione a due fattori?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Usa le passkey per accedere senza password" @@ -36824,8 +36836,8 @@ msgstr "Usa l'attività vocale" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Usa il correttore ortografico del tuo sistema operativo, se disponibile. Altrimenti, usa i dizionari integrati di {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Usa la tua passkey" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Controlli utente" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Debug utente" @@ -36972,7 +36984,7 @@ msgstr "Volume utente" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verifica annullata" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Codice di verifica" @@ -37185,7 +37197,7 @@ msgstr "Email di verifica inviata. Controlla la tua casella di posta." msgid "Verification expired" msgstr "Verifica scaduta" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Community verificata" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verifica" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Verifica connessione" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Verifica email" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Modulo di verifica dell'identità" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Verifica la tua identità" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Verifica il tuo indirizzo email per inviare richieste di amicizia." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Verifica la tua email prima di aggiungere una passkey." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Verifica la tua email prima di aggiungere un'app di autenticazione." @@ -37571,7 +37583,7 @@ msgstr "Visualizza e gestisci gli utenti bannati." msgid "View and manage every webhook configured across your community." msgstr "Visualizza e gestisci tutti i webhook configurati nella tua community." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Visualizza e gestisci i codici di backup per il recupero dell'account" @@ -37605,7 +37617,7 @@ msgstr "Visualizza canale" msgid "View channel members" msgstr "Visualizza membri del canale" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Visualizza codici" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Visualizza piani" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Visualizza profilo" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "canale vocale" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Canale vocale" @@ -38073,7 +38085,7 @@ msgstr "Annullato" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Attendi qui" msgid "Waiting for connection..." msgstr "In attesa di connessione..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "In attesa della passkey…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Guarda" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Guarda stream" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Anteprime siti web" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Bentornato" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Al momento non fai parte di alcuna community." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Hai bloccato {userName}. Non potrai inviare messaggi finché non lo sblocchi." @@ -39101,6 +39113,11 @@ msgstr "Puoi annullare l'eliminazione entro 14 giorni" msgid "You can close this modal. The import will continue in the background." msgstr "Puoi chiudere questa finestra. L'importazione continuerà in background." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Puoi chiudere questa scheda" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Ora puoi chiudere questa scheda e tornare all'app." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Non puoi inviare una richiesta d'amicizia a te stesso." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Non puoi inviare messaggi in questo canale." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Dovrai comunque completare il passaggio dell'email." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Non ti verrà più chiesta una passkey dopo la password. La tua app di autenticazione rimarrà il tuo secondo fattore." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Dovrai accedere di nuovo su tutti i dispositivi da cui hai effettuato la disconnessione" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Avrai bisogno di una delle tue passkey per accedere da un nuovo dispositivo. Se perdi tutte le tue passkey, potresti non riuscire più ad accedere al tuo account. I codici di backup verranno salvati per te, così avrai ancora un modo per accedere." @@ -39918,12 +39935,12 @@ msgstr "Il tuo account è troppo nuovo per inviare messaggi in questa community. msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "La tua richiesta di account è in attesa di approvazione. Potrai accedere dopo l’approvazione di un amministratore." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Il tuo account richiede l'autenticazione a più fattori, ma nessun metodo supportato è configurato su questo dispositivo. Accedi da un dispositivo con la tua app di autenticazione o la chiave di sicurezza, oppure contatta il supporto." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Il tuo account non sarà più protetto dall'autenticazione a due fattori quando accedi con la password. Perderai anche i permessi elevati nelle community che richiedono l'autenticazione a due fattori." @@ -39941,16 +39958,6 @@ msgstr "La tua azione non può essere completata perché è stata segnalata dai msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "La tua candidatura è in attesa di valutazione. Puoi comunque aggiornare i dettagli della scheda o ritirare la candidatura." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Il tuo browser ha bloccato la finestra popup della passkey. Consenti i popup per questo sito e riprova." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Il tuo browser non supporta le passkey su questo dominio. Aggiorna il browser oppure accedi con la password e il codice di autenticazione a due fattori." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "La tua community deve avere almeno {minMemberCount, plural, one {# membr msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "La tua carta di credito è stata verificata. Se la carta è valida, i contenuti per adulti saranno sbloccati a breve. Puoi chiudere questa scheda e tornare all'app." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Il tuo dispositivo ti chiederà di salvare una passkey aggiornata per {name}. Sostituirà quella vecchia." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Il tuo dispositivo ti chiederà di salvare una passkey aggiornata per {name}. Usa lo stesso telefono o la stessa chiave di sicurezza che hai appena utilizzato." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Ingrandisci" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/ja/messages.po b/fluxer_app/src/features/i18n/locales/ja/messages.po index 7aa4407b7..390f50d3a 100644 --- a/fluxer_app/src/features/i18n/locales/ja/messages.po +++ b/fluxer_app/src/features/i18n/locales/ja/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount}{rawMemberCount, plural, one {人のメンバー} other {人のメンバー}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, other {#件のメンション}}" @@ -2370,8 +2370,8 @@ msgstr "6か月" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6桁のコード" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "アカウントとプレミアムのオーバーライド" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "アカウントアクセス" @@ -2807,7 +2807,7 @@ msgstr "月額プランに加入中(解約予約済み)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "続けるにはアカウントを追加してください。" msgid "Add an email and password to your account first." msgstr "まずアカウントにメールアドレスとパスワードを追加してください。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "アカウントのセキュリティをさらに強化します" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "ボットの追加先" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "チャンネルを追加" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "メッセージに新しいリアクションを追加します。" #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "メモを追加" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "上書きを追加" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "パスキーを追加" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "リアクションを追加" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "辞書に登録" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "お気に入りに追加" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "お気に入りGIFに追加しました" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "お気に入りに追加しました" @@ -3296,11 +3296,11 @@ msgstr "お気に入りに追加しました" msgid "Added to saved media" msgstr "保存済みメディアに追加しました" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "追加日: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "追加日: {createdDate} • 最終使用日: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "すべての言語" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "すべてのメッセージ" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "すでに削除されています" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "すでにアカウントをお持ちですか?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "アプリのズーム" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "アプリの表示サイズ" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "承認" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "すでにお使いの{productName}アプリからこのアプリを承認してください。パスワードは不要です。" @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "カテゴリ「{categoryName}」を削除しますか?この操作は元に戻せません。" #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "パスキー「<0>{0}」を削除してもよろしいですか?" @@ -4493,7 +4493,7 @@ msgstr "この添付ファイルを削除してもよろしいですか?この msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "このコミュニティを削除しますか?この操作は元に戻せません。すべてのチャンネル、メッセージ、設定は完全に削除されます。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "このパスキーを削除しますか?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "通話を開始する前に確認する" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "サインイン時にパスワードの入力後にパスキーを求める" @@ -4690,7 +4690,7 @@ msgstr "添付ファイル" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "オーディオ" @@ -4851,14 +4851,14 @@ msgstr "認証" msgid "Authenticator" msgstr "認証アプリ" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "認証アプリ" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "認証コード" @@ -4928,7 +4928,7 @@ msgstr "連携アプリ" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "現在離席中" msgid "Back" msgstr "戻る" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "{productName}に戻る" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "ロールに戻る" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "設定に戻る" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "サインイン画面に戻る" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "バックアップコード" @@ -5351,7 +5356,7 @@ msgstr "バックアップコード" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "ブックマークの上限に達しました" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "通話" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "カメラオフ" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "カメラオン" @@ -6364,9 +6369,9 @@ msgstr "ここにファイルをアップロードできません" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "ここにファイルをアップロードできません" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "絵文字を変更" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "友達のニックネームを変更" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "グループニックネームを変更" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "ニックネームを変更" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "チャンネル操作" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "チャンネルをお気に入りに追加しました" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "チャンネルを作成しました" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "チャンネルのデバッグ" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "チャンネルを削除しました" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "チャンネルレコード" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "お気に入りからチャンネルを削除しました" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "プロフィールアクセントカラーを選択" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "アカウントを登録" @@ -7715,7 +7720,7 @@ msgstr "報告を送信するには、アカウントを登録してメールア msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "メールアドレスとパスワードを追加してアカウントを登録してください。登録完了前に、認証コードをメールでお送りします。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "アカウントを登録して、2段階認証やパスキーなどのセキュリティ機能にアクセスしましょう。" @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "クイックCSSをクリアしますか?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "検索をクリア" @@ -8103,7 +8108,7 @@ msgstr "複製はオフになっています" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "閉じる" @@ -8160,11 +8165,9 @@ msgstr "閉じるときにメニューバーに格納" msgid "Close to tray" msgstr "閉じるときにタスクトレイに格納" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "ウィンドウを閉じる" @@ -8456,7 +8459,7 @@ msgstr "コミュニケーション" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "コミュニティデバッグ" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "コミュニティのデフォルト" @@ -8577,7 +8580,7 @@ msgstr "コミュニティメンバーの記録" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "コミュニティメンバー" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "コミュニティの通知レベル" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "コミュニティの通知設定" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "比較" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "成人向けコンテンツの確認を完了する" @@ -9093,7 +9096,7 @@ msgstr "接続: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "左クリック(ボタン上)または右クリック(その他の #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "続行" msgid "Continue to checkout" msgstr "購入手続きへ" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "続行して{host}のパスキーを作成します" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "コミュニティの報告に進む" msgid "Continue to report user" msgstr "ユーザーの報告に進む" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "パスキーで続行" @@ -9238,11 +9238,6 @@ msgstr "パスキーで続行" msgid "Continue with SSO" msgstr "SSOで続行" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "{host}にサインインするには、パスキーで続行してください" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "個人またはコミュニティに対する襲撃、集団的嫌がら #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "コピーしました" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "カテゴリIDをコピー" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "チャンネルIDをコピー" @@ -9421,12 +9416,12 @@ msgstr "チャンネルリンクをコピー" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "コードをコピー" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "コミュニティIDをコピー" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "招待URLをコピー" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "メッセージをコピー" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "メッセージIDをコピー" @@ -9570,7 +9565,7 @@ msgstr "メッセージIDをコピー" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "スタンプURLをコピー" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "認証アプリにセットアップキーをコピーしてください #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "ユーザーIDをコピー" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "ユーザー名をコピー" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "アプリを削除できませんでした" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "パスキーを削除できませんでした" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "招待を送信できませんでした" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "招待を送信できませんでした。もう一度お試しください。" @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "メンション抑制のバイパスを更新できませんでした" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "パスキーの2段階認証を更新できませんでした" @@ -10206,6 +10201,11 @@ msgstr "代替テキストを更新できませんでした。もう一度お試 msgid "Couldn't update voice activity sharing right now" msgstr "現在、音声アクティビティの共有を更新できませんでした" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "パスキーを更新できませんでした。もう一度お試しください。" + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "アバターをアップロードできませんでした" msgid "Couldn't upload banner" msgstr "バナーをアップロードできませんでした" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "ポップアップウィンドウでパスキーを使用できませんでした。もう一度お試しください。" - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "コードを確認できませんでした。もう一度お試しくだ msgid "Couldn't verify the connection" msgstr "接続を確認できませんでした" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "パスキーで確認できませんでした。もう一度お試しください。" @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "ゆったり" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "作成" @@ -10298,7 +10293,7 @@ msgstr "{userName}との新しいグループを作成" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "アプリを作成" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "カテゴリを作成" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "チャンネルを作成" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "コミュニティを作成" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "カスタム警告文" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "カスタム…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "デバッグ" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "チャンネルをデバッグ" @@ -11164,7 +11159,7 @@ msgstr "メッセージをデバッグ" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "ユーザーをデバッグ" @@ -11315,7 +11310,7 @@ msgstr "デラウェア州" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "{fileName}を削除" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "アカウントを削除" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "アプリケーションを削除" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "添付ファイルを削除" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "メディアを削除" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "メッセージを削除" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "他のメンバーのメッセージを削除します。ピン留めは別途管理されます。" #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "パスキーを削除" @@ -11701,7 +11696,7 @@ msgstr "コミュニティの内容を説明してください" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "説明" @@ -11966,7 +11961,7 @@ msgstr "デバイス:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "ダイレクト入力" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "ダイレクトメッセージ" @@ -12050,7 +12045,7 @@ msgstr "ダイレクトメッセージのプレビュー" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "ダイレクトメッセージ" @@ -12077,14 +12072,14 @@ msgstr "直接アップロードが有効です" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "無効にする" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "アカウントを無効にする" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "切断されました" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "「見つける」掲載コミュニティ" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "識別子" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "閉じる" @@ -12477,7 +12472,7 @@ msgstr "DM・友達リクエスト設定" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DMを閉じました" @@ -12607,7 +12602,7 @@ msgstr "ブロックはしません。後でまた開けます。" #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "ドメイン" @@ -12697,7 +12692,7 @@ msgstr "ユーザーをダブルクリックすると配信を視聴できます #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "オランダ語" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "例: YubiKey、iPhone、会社のPC" @@ -13092,7 +13087,7 @@ msgstr "名前、説明、アイコンなどのコミュニティ全体の設定 #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "グループを編集" @@ -13123,7 +13118,7 @@ msgstr "メディアを編集" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "メッセージを編集" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "{windowEndsOn}まで払い戻しの対象となります。これにより、サブスクリプションも直ちにキャンセルされます。" #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "メールアドレス" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "絵文字を更新しました" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "絵文字" @@ -13525,7 +13520,7 @@ msgstr "お気に入りはありません" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "有効にする" @@ -13680,7 +13675,7 @@ msgstr "モバイルプッシュ通知をオンにする" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "通知をオンにする" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "設定済みの認証情報を持つインテグレーションを有効にします。利用可能なサービスのみが表示されます。" #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "2段階認証を有効にする" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "英語(米国)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "強化" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "新しいメールアドレスを入力" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "パスキーが使えない場合は、バックアップコードのいずれかを入力してください。" #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "バックアップコードのいずれかを入力してください。" @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "テキストを入力" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "認証アプリまたはバックアップコードから{digitCount}桁のコードを入力してください。" @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "続行する前にコードを入力してください。" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "認証アプリのコードを入力してください。" @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "名前を入力" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "パスワードを入力してください。" @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "<0>{expiredDate}に期限切れになりました。<1/>は無効になりました。いつでも再登録できます。" #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "有効期限" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "エクスプレッションの入力候補" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "エクスプレッションピッカーのカテゴリ" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "絵文字の準備に失敗しました" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "切り抜いた画像の処理に失敗しました。もう一度お試しください。" @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "SSOを開始できませんでした" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "アカウントの切り替えに失敗しました" @@ -15053,7 +15048,7 @@ msgstr "お気に入り" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "お気に入り" @@ -15268,6 +15263,11 @@ msgstr "アカウントのセットアップを完了" msgid "Finish account setup first" msgstr "まずアカウントのセットアップを完了してください" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "新しいタブで完了してください。閉じてしまった場合は、もう一度「パスキーで続行」を押してください。" + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "フォルダー名" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "フォルダー設定" @@ -15479,7 +15479,7 @@ msgstr "自分用" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "この確認では、こちらからテキストメッセージを受け取るのではなく、こちらにテキストメッセージを送信していただきます。" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "セキュリティ保護のため、ご本人確認をお願いします。" @@ -15606,7 +15606,7 @@ msgstr "パスワードを忘れた場合" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "パスワードをお忘れですか?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "友達と小規模コミュニティのみ" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "友達の友達" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "一般" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "ドイツ" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "{premiumProductName}を入手" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIFのURL" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "グローバルショートカット" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "戻る" @@ -16374,6 +16374,11 @@ msgstr "戻る" msgid "Go back and enter a valid email." msgstr "戻って有効なメールアドレスを入力してください。" +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "{productName}に戻って続行してください。" + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "有効期限の注釈を非表示" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "お気に入りを非表示" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "ミュート中を非表示" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "ミュート中のチャンネルを非表示" @@ -17358,7 +17363,7 @@ msgstr "アイデンティティ" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "アイドル状態" @@ -17818,7 +17823,7 @@ msgstr "不適切なプロフィール" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "受信箱" @@ -17867,7 +17872,7 @@ msgstr "コミュニティIDを含めてください。" #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "招待ページのプレビュー" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "メンバーを招待" @@ -18456,7 +18461,7 @@ msgstr "招待者:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "招待" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "通話に参加" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "コミュニティに参加" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "{productName}への参加日" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "ジャンプ" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "このコミュニティからメンバーをキックします。" #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "メンバーをキック" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "通話から退出" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "コミュニティを脱退" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "リンクビルダー" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "リンクをクリップボードにコピーしました" @@ -19859,8 +19864,8 @@ msgstr "マルウェアまたは危険なリンク" msgid "Malware, credential theft, or harmful files." msgstr "マルウェア、認証情報の窃取、または有害なファイル。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "管理" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "アカウントを管理" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "アカウントへのアクセスを持つアプリとデバイスを管理します" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "受信箱の未読チャンネルをすべて、確認なしですぐに既読にする" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "既読にする" @@ -20021,7 +20026,7 @@ msgstr "ネタバレにする" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "未読にする" @@ -20169,7 +20174,7 @@ msgstr "成人向けコミュニティ" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "成人向けコンテンツ" @@ -20315,7 +20320,7 @@ msgstr "測定中…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "メンバー" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "メンバー" @@ -20616,7 +20621,7 @@ msgstr "このロールにメンションしますか?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "メンション" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "その他のメディア操作" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "その他のオプション" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "通話をミュート" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "カテゴリをミュート" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "コミュニティをミュート" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "コミュニティをミュート" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "入室サウンドをミュート" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "お気に入りをミュート" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "名前は2文字以上で入力してください" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "パスキーに名前を付ける" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "パスキーの名前" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "ネブラスカ州" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "アカウントが必要ですか?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "ネバダ州" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "しない" @@ -22276,7 +22281,7 @@ msgstr "新しい順" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "次へ" @@ -22905,7 +22910,7 @@ msgstr "ユーザーが見つかりませんでした" msgid "No verification is required." msgstr "認証は不要です。" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "利用できる認証方法がありません" @@ -23038,11 +23043,13 @@ msgstr "ページが見つかりません" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "今はしない" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "メモ(自分のみ表示)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "なし" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "通知の個別設定" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "通知設定" @@ -23152,7 +23159,7 @@ msgstr "通知音量" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "オフ" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "オフライン" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "OK" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "オンライン" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "オンライン" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "「{manageCommunityPermissionLabel}」の権限を持つメンバーのみが変更できます。" #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "メンションのみ" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "設定で{labelText}を開く" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "{landmarkName}を開く" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "開いているダイレクトメッセージ" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "DMを開く" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "請求書「{invoiceLabel}」を開く" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "リンクを開く" @@ -23850,7 +23857,7 @@ msgstr "クイックスイッチャーを開く" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "設定を開く" @@ -23935,11 +23942,6 @@ msgstr "テーマスタジオのポップアウトを開く" msgid "Open theme studio…" msgstr "テーマスタジオを開く…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "{productName}からこのウィンドウを開いて、パスキーを使用してください。" - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "オプション" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "パスキー" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "パスキー名" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "パスキーが更新されました" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "パスキー" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "パスキーには、有効なアプリケーション識別子を持つ署名済みのmacOSバンドルが必要です。署名済みのデスクトップクライアントをインストールして、もう一度お試しください。" #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "パスワード" msgid "Password changed" msgstr "パスワードを変更しました" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "パスワードマネージャーは、このウェブアドレスでパスキーを提供しない場合があります。代わりに、古いアドレスのポップアップウィンドウでお試しください。" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "メッセージのリンクを貼り付けてください。" #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "ユーザー辞書" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "個人メモ" @@ -24885,7 +24887,7 @@ msgstr "グループDMをピン留め" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "メッセージをピン留め" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "ピン留め中" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "DMをピン留めしました" @@ -25020,7 +25022,7 @@ msgstr "プラットフォーム管理者" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "再生" @@ -25318,6 +25320,11 @@ msgstr "キー、マウスボタン、またはゲームパッドボタンを押 msgid "Press a shortcut…" msgstr "ショートカットを入力…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "「続行」を押してパスキーを使用してください。" + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "主な使用言語" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "メインナビゲーション" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "プライバシーポリシー" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "プライバシー設定" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "ヒント:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "進む" @@ -26090,7 +26097,7 @@ msgstr "{emojiShortcode}でリアクション" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "再生成すると現在のトークンは無効になります。古い値を使用しているコードをすべて更新してください。" #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "登録" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "登録済みパスキー" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "バナーを削除" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "ブックマークを削除" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "辞書から削除" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "お気に入りから削除" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "GIFをお気に入りから削除しました" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "お気に入りから削除しました" @@ -27032,7 +27039,7 @@ msgstr "権限を削除すると、ボットの機能が制限される場合が msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "タイムアウトを解除すると、<0>{targetUserTag}が再びメッセージの送信、リアクション、ボイスチャンネルへの参加ができるようになります。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "名前を変更" @@ -27119,7 +27126,7 @@ msgstr "返信" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "返信" @@ -27209,7 +27216,7 @@ msgstr "問題を報告" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "メッセージを報告" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "モデレーション操作に2段階認証を必須にする" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "2段階認証でパスキーを必須にする" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "リセットリンクが無効または期限切れです" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "成人向けコンテンツの同意状況をリセット" @@ -27880,7 +27887,7 @@ msgstr "画像検索" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "画像検索" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "内容を確認して確定" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "アカウントにアクセスできるアプリを確認してください。" @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "過去の購入履歴と払い戻しオプションを確認" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "サインイン中のデバイスを確認し、心当たりのないセッションからサインアウトしてください。" @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "ロールを更新しました" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "ロール" @@ -28261,7 +28268,7 @@ msgstr "彩度" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "範囲" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "スコープ" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "スクリーンリーダー" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "チャンネル、ユーザー、コミュニティを検索" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "友達を検索" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "選択したテキストを検索" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "設定を検索" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "設定を検索…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "セキュリティ" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "セキュリティ機能" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "セキュリティキー" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "セキュリティキー / パスキー" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "センシティブなメディア" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "送信済み" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "セッション" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "{identifier} のセッションの有効期限が切れました。もう一度サインインしてください。" @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "すべてのサウンドエフェクトの音量を設定します。個別に設定したサウンドはこの設定を無視します。" #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "設定を開きました。" #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "設定項目" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "サイドバー" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "サインイン" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "サインインしてギフトを受け取る" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "ブラウザでサインイン" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "パスキーでサインイン" @@ -30666,7 +30673,7 @@ msgstr "組織のシングルサインオンプロバイダーでサインイン #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "サインアウト" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "サインイン情報" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "サインインの流れ" @@ -31189,7 +31196,7 @@ msgstr "追加できないユーザーがいます" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "問題が発生しました" @@ -31374,7 +31381,7 @@ msgstr "音量" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "サウンド" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "メッセージ入力欄に添付ファイルが追加され次第、アップロードを開始します" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "ビデオ通話を開始" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "音声通話を開始" @@ -31899,7 +31906,7 @@ msgstr "スタンプ" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "スタンプ: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "スタンプ" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "すべてのリンクの信頼を解除しますか?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "パスキーによる2段階認証をオフにしますか?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "すべてのロールメンションを抑制" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "埋め込みを非表示" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "テキストチャンネル" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "テキストチャンネル" @@ -33055,7 +33062,7 @@ msgstr "お使いの携帯電話からSMSを送信してください" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "テキスト読み上げ" @@ -33119,6 +33126,11 @@ msgstr "完了しませんでした。一部のコミュニティからはすで msgid "That did not go through. Nothing changed. Try again." msgstr "処理できませんでした。何も変更されていません。もう一度お試しください。" +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "うまくいきませんでした。もう一度試すか、キャンセルしてください。" + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "有効な色ではありません。16進数、rgb()、hsl()、またはCSSの色名をお試しください。" @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "その画像は使用できませんでした。別のファイルをお試しください。" #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "この画像は無効です。別の画像を試してください。" @@ -34035,11 +34047,11 @@ msgstr "これは2番目のオプションの説明です" msgid "This is the third option description" msgstr "これは3番目のオプションの説明です" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "これは最後のパスキーであり、パスキーはこのアカウントの2つ目の認証要素です。これを削除すると、アカウントの2段階認証がオフになり、現在のバックアップコードは無効になります。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "これは最後のパスキーです。これを削除すると、パスキーを2つ目の認証要素として使用できなくなります。" @@ -34154,16 +34166,6 @@ msgstr "この参加者はスピーカーミュート中です" msgid "This participant was deafened by moderators" msgstr "この参加者はモデレーターによりスピーカーミュートされています" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "このパスキーリクエストは検証できませんでした。このウィンドウを閉じて、もう一度お試しください。" - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "このパスキーリクエストはタイムアウトしました。このウィンドウを閉じて、もう一度お試しください。" - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "すべての信頼済みドメインが削除されます。すべての msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "すべてのカスタムショートカットを削除し、組み込みのショートカットをすべて有効にします。この操作は元に戻せません。" +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "このリクエストは期限切れです。戻ってもう一度お試しください。" + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "このリセットリンクは期限切れです。リセットリンクは1時間有効です。新しいものをリクエストしてください。" @@ -34807,7 +34814,7 @@ msgstr "グループの所有権を{userName}に移行しますか?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "所有権を移行" @@ -34823,7 +34830,7 @@ msgstr "{0}に所有権を移行しました" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "翻訳" @@ -34980,7 +34987,7 @@ msgstr "別の変数名をお試しいただくか、検索をクリアしてく #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "再試行" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "再試行" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "しばらくしてからもう一度お試しください。" @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "「テーマ」「通知」「プライバシー」などを検索してみてください" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "セキュリティキー/パスキーを試す" @@ -35088,7 +35095,7 @@ msgstr "トルコ語" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "オフにする" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "このソースのオーディオ共有をオフにするか、しばらくしてからもう一度お試しください。" #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "カメラをオフにする" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "ログイン情報やアカウントのセキュリティ詳細を表示する前に、ストリーミングプライバシーをオフにしてください。" #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "オンにする" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "2段階認証" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "2段階認証" @@ -35288,7 +35295,7 @@ msgstr "2段階認証を無効にしました" msgid "Two-factor authentication enabled" msgstr "2段階認証を有効にしました" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "2段階認証は有効です" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "ブロック解除" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "未分類" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "ウェブサイトリンクを下線表示" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "了解" @@ -35643,7 +35650,7 @@ msgstr "汎用フォールバック。品質は最も低いですが、どこで #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "すべてのデバイスのミュートを解除" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "カテゴリのミュートを解除" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "コミュニティのミュートを解除" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "コミュニティのミュートを解除" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "DMのミュートを解除" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "お気に入りのミュートを解除" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "ピン留めを解除" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "メッセージのピン留めを解除" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "このメッセージのピン留めを解除しますか?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "DMのピン留めを解除しました" @@ -36193,6 +36200,11 @@ msgstr "メールアドレスを更新" msgid "Update my status" msgstr "ステータスを更新" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "パスキーを更新" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "タイムアウトを更新" msgid "Update your own nickname." msgstr "自分のニックネームを更新します。" +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "パスキーの更新" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "{readMessageHistoryPermissionLabel}の権限がないメンバー向け msgid "Use a different email address and verify it with a code." msgstr "別のメールアドレスを使用し、コードで認証してください。" -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "パスワードマネージャーのパスキーを使用" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "実際の値を使用" msgid "Use alternative method" msgstr "別の方法を使う" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "認証アプリを使用して2段階認証コードを生成する" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "{productName}のルールに明らかに違反し、上記のいずれにも当てはまらない場合にのみ使用してください。" #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "パスキーを2段階認証に使用しますか?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "パスキーを使用してパスワードなしでサインインする" @@ -36824,8 +36836,8 @@ msgstr "音声検出を使用" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "OSのスペルチェッカーを使用します。利用できない場合は、{productName}のアプリ内辞書を使用します。" -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "パスキーを使用" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "ユーザーコントロール" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "ユーザーデバッグ" @@ -36972,7 +36984,7 @@ msgstr "ユーザーの音量" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "認証がキャンセルされました" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "認証コード" @@ -37185,7 +37197,7 @@ msgstr "確認メールを送信しました。受信トレイをご確認くだ msgid "Verification expired" msgstr "認証の有効期限が切れました" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "認証済みコミュニティ" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "認証" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "連携を確認" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "メールアドレスを確認" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "本人確認フォーム" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "ご本人確認" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "友達リクエストを送信するには、メールアドレスを確認してください。" #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "パスキーを追加する前にメールアドレスを確認してください。" #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "認証アプリを追加する前にメールアドレスを確認してください。" @@ -37571,7 +37583,7 @@ msgstr "BANしたユーザーを表示・管理できます。" msgid "View and manage every webhook configured across your community." msgstr "コミュニティに設定されているすべてのウェブフックを表示・管理できます。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "アカウント復旧用のバックアップコードを表示・管理" @@ -37605,7 +37617,7 @@ msgstr "チャンネルを表示" msgid "View channel members" msgstr "チャンネルメンバーを表示" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "コードを表示" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "プランを見る" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "プロフィールを見る" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "ボイスチャンネル" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "ボイスチャンネル" @@ -38073,7 +38085,7 @@ msgstr "無効" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "そのままお待ちください" msgid "Waiting for connection..." msgstr "接続待機中…" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "パスキーを待機中…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "見る" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "配信を見る" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "ウェブサイトのプレビュー" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "おかえりなさい" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "現在、コミュニティに参加していません。" #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "{userName}さんをブロックしました。ブロックを解除しないとメッセージを送信できません。" @@ -39101,6 +39113,11 @@ msgstr "14日以内であれば、削除処理をキャンセルできます" msgid "You can close this modal. The import will continue in the background." msgstr "この画面を閉じても、バックグラウンドでインポートが続行されます。" +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "このタブは閉じても構いません" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "このタブを閉じてアプリに戻ることができます。" @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "自分に友達リクエストを送信することはできません。" #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "このチャンネルではメッセージを送信できません。" @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "メールでの確認も完了させる必要があります。" #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "パスワード入力後にパスキーを求められなくなります。認証アプリは引き続き2つ目の認証要素として使用されます。" @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "サインアウトしたすべてのデバイスで、再度サインインする必要があります" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "新しいデバイスでサインインするには、パスキーのいずれかが必要です。すべてのパスキーを失うと、アカウントにアクセスできなくなるおそれがあります。バックアップコードが保存されるため、万一の場合もサインインする手段が残ります。" @@ -39918,12 +39935,12 @@ msgstr "アカウント作成から間もないため、このコミュニティ msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "アカウント申請は承認待ちです。管理者が承認するとサインインできます。" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "アカウントで多要素認証が必須ですが、このデバイスではサポートされている方法が設定されていません。認証アプリまたはセキュリティキーが設定されているデバイスでサインインするか、サポートにお問い合わせください。" #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "パスワードでサインインする際に、アカウントは2段階認証で保護されなくなります。また、2段階認証が必須のコミュニティでは、上位の権限も失われます。" @@ -39941,16 +39958,6 @@ msgstr "安全システムによって不適切な操作と判断されたため msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "現在、申請内容を審査中です。引き続き掲載内容を更新したり、申請を取り下げたりすることができます。" -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "ブラウザがパスキーのポップアップウィンドウをブロックしました。このサイトのポップアップを許可して、もう一度お試しください。" - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "お使いのブラウザでは、このドメインでパスキーを使用できません。ブラウザをアップデートするか、パスワードと2段階認証コードでサインインしてください。" - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "コミュニティを「見つける」に掲載するには、メンバ msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "クレジットカードの確認が完了しました。カードが有効な場合、まもなく成人向けコンテンツが利用可能になります。このタブを閉じてアプリに戻ることができます。" +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "デバイスから {name} 用の更新済みパスキーを保存するよう求められます。古いパスキーは置き換えられます。" + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "デバイスから {name} 用の更新済みパスキーを保存するよう求められます。先ほど使用したのと同じスマートフォンまたはセキュリティキーを使用してください。" + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "拡大/縮小" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "拡大" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/ko/messages.po b/fluxer_app/src/features/i18n/locales/ko/messages.po index 26bbdce34..686ab78d6 100644 --- a/fluxer_app/src/features/i18n/locales/ko/messages.po +++ b/fluxer_app/src/features/i18n/locales/ko/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount}{rawMemberCount, plural, one {명} other {명}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, other {멘션 #개}}" @@ -2370,8 +2370,8 @@ msgstr "6개월" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6자리 코드" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "계정 및 프리미엄 재정의" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "계정 액세스" @@ -2807,7 +2807,7 @@ msgstr "월간 구독 중 (취소 예정)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "계정을 추가하여 계속하세요." msgid "Add an email and password to your account first." msgstr "먼저 계정에 이메일과 비밀번호를 추가하세요." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "계정 보안을 한 단계 더 강화하세요" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "봇을 추가할 대상을 선택하세요" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "채널 추가" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "메시지에 새로운 반응을 추가합니다." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "메모 추가" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "권한 재정의 추가" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "패스키 추가" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "반응 추가" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "사전에 추가" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "즐겨찾기에 추가" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "즐겨찾는 GIF에 추가됨" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "즐겨찾기에 추가됨" @@ -3296,11 +3296,11 @@ msgstr "즐겨찾기에 추가됨" msgid "Added to saved media" msgstr "저장된 미디어에 추가됨" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "추가일: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "추가일: {createdDate} • 마지막 사용: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "모든 언어" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "모든 메시지" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "이미 삭제됨" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "이미 계정이 있으신가요?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "앱 화면 확대/축소" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "앱 확대/축소 수준" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "승인" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "이미 사용 중인 {productName} 앱에서 이 앱을 승인하세요. 비밀번호가 필요하지 않습니다." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "카테고리 \"{categoryName}\"을(를) 정말 삭제하시겠어요? 이 작업은 되돌릴 수 없습니다." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "패스키 <0>{0}을(를) 정말 삭제하시겠어요?" @@ -4493,7 +4493,7 @@ msgstr "이 첨부 파일을 삭제하시겠어요? 이 작업은 되돌릴 수 msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "정말 이 커뮤니티를 삭제하시겠어요? 이 작업은 되돌릴 수 없으며, 모든 채널, 메시지, 설정이 영구적으로 삭제됩니다." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "이 패스키를 삭제하시겠어요?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "통화 시작 전에 확인" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "로그인 시 비밀번호 입력 후 패스키를 요청합니다" @@ -4690,7 +4690,7 @@ msgstr "첨부 파일" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "오디오" @@ -4851,14 +4851,14 @@ msgstr "인증" msgid "Authenticator" msgstr "인증 앱" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "인증 앱" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "인증 코드" @@ -4928,7 +4928,7 @@ msgstr "연결된 앱" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "지금은 부재중" msgid "Back" msgstr "뒤로" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "{productName}(으)로 돌아가기" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "역할로 돌아가기" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "설정으로 돌아가기" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "로그인으로 돌아가기" @@ -5342,8 +5347,8 @@ msgstr "백스페이스" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "백업 코드" @@ -5351,7 +5356,7 @@ msgstr "백업 코드" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "북마크 한도에 도달했습니다" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "통화" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "카메라 끄기" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "카메라 켜기" @@ -6364,9 +6369,9 @@ msgstr "여기에 파일을 올릴 수 없습니다" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "여기에 파일을 올릴 수 없습니다" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "이모티콘 변경" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "친구 닉네임 변경" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "내 그룹 닉네임 변경" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "닉네임 변경" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "채널 작업" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "채널이 즐겨찾기에 추가되었습니다" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "채널 생성됨" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "채널 디버그" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "채널 삭제됨" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "채널 레코드" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "채널이 즐겨찾기에서 삭제되었습니다" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "프로필 강조 색상 선택" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "계정 등록하기" @@ -7715,7 +7720,7 @@ msgstr "계정을 등록하고 이메일을 인증해야 신고를 보낼 수 msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "이메일과 비밀번호를 추가하여 계정을 등록하세요. 완료하기 전에 이메일 확인을 위한 인증 코드를 보내드립니다." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "계정을 등록하여 2단계 인증 및 패스키와 같은 보안 기능에 액세스하세요." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "빠른 CSS를 지울까요?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "검색 지우기" @@ -8103,7 +8108,7 @@ msgstr "복제가 꺼져 있습니다" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "닫기" @@ -8160,11 +8165,9 @@ msgstr "메뉴 막대로 닫기" msgid "Close to tray" msgstr "트레이로 닫기" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "창 닫기" @@ -8456,7 +8459,7 @@ msgstr "커뮤니케이션" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "커뮤니티 디버그" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "커뮤니티 기본" @@ -8577,7 +8580,7 @@ msgstr "커뮤니티 멤버 기록" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "커뮤니티 멤버" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "커뮤니티 알림 수준" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "커뮤니티 알림 설정" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "비교" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "성인 콘텐츠 확인 완료하기" @@ -9093,7 +9096,7 @@ msgstr "연결: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "좌클릭(버튼) 또는 우클릭(다른 요소)으로 상황별 메뉴 #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "계속" msgid "Continue to checkout" msgstr "결제 계속하기" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "계속하여 {host}용 패스키를 만드세요" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "커뮤니티 신고 계속하기" msgid "Continue to report user" msgstr "사용자 신고 계속하기" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "패스키로 계속하기" @@ -9238,11 +9238,6 @@ msgstr "패스키로 계속하기" msgid "Continue with SSO" msgstr "SSO로 계속하기" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "패스키로 계속하여 {host}에 로그인하세요" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "특정인이나 커뮤니티를 겨냥한 레이드, 집단 공격, 괴 #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "복사됨" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "카테고리 ID 복사" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "채널 ID 복사" @@ -9421,12 +9416,12 @@ msgstr "채널 링크 복사" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "코드 복사" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "커뮤니티 ID 복사" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "초대 URL 복사" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "메시지 복사" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "메시지 ID 복사" @@ -9570,7 +9565,7 @@ msgstr "메시지 ID 복사" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "스티커 URL 복사" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "인증 앱에 설정 키를 복사하세요." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "사용자 ID 복사" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "사용자 이름 복사" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "애플리케이션을 삭제할 수 없습니다" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "패스키를 삭제할 수 없습니다" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "초대를 보낼 수 없습니다" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "초대를 보낼 수 없습니다. 다시 시도해 주세요." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "멘션 알림 끄기 우회 설정을 업데이트할 수 없습니다" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "패스키 2단계 인증을 업데이트할 수 없습니다" @@ -10206,6 +10201,11 @@ msgstr "대체 텍스트를 업데이트할 수 없습니다. 다시 시도해 msgid "Couldn't update voice activity sharing right now" msgstr "지금은 음성 활동 공유를 업데이트할 수 없습니다" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "패스키를 업데이트하지 못했습니다. 다시 시도해 주세요." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "아바타를 업로드할 수 없습니다" msgid "Couldn't upload banner" msgstr "배너를 업로드할 수 없습니다" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "팝업 창에서 패스키를 사용할 수 없습니다. 다시 시도해 주세요." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "코드를 확인할 수 없습니다. 다시 시도해 주세요." msgid "Couldn't verify the connection" msgstr "연결을 확인할 수 없습니다" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "패스키로 확인할 수 없습니다. 다시 시도해 주세요." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "아늑하게" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "만들기" @@ -10298,7 +10293,7 @@ msgstr "{userName}님과 새 그룹 만들기" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "애플리케이션 만들기" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "카테고리 만들기" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "채널 만들기" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "커뮤니티 만들기" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "맞춤 경고 문구" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "직접 지정…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "디버그" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "채널 디버그" @@ -11164,7 +11159,7 @@ msgstr "메시지 디버그" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "사용자 디버그" @@ -11315,7 +11310,7 @@ msgstr "델라웨어" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "{fileName} 삭제" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "계정 삭제" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "애플리케이션 삭제" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "첨부 파일 삭제" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "미디어 삭제" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "메시지 삭제" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "다른 멤버의 메시지를 삭제합니다. 고정 권한은 별도로 관리됩니다." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "패스키 삭제" @@ -11701,7 +11696,7 @@ msgstr "커뮤니티에 대해 설명해 주세요" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "설명" @@ -11966,7 +11961,7 @@ msgstr "기기:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "원본 입력" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "DM" @@ -12050,7 +12045,7 @@ msgstr "DM 미리보기" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "DM" @@ -12077,14 +12072,14 @@ msgstr "바로 업로드 활성화됨" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "비활성화" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "계정 비활성화" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "연결 끊김" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "디스커버리에 등록된 커뮤니티" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "식별자" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "닫기" @@ -12477,7 +12472,7 @@ msgstr "DM 및 친구 요청 설정" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM 닫힘" @@ -12607,7 +12602,7 @@ msgstr "차단하지 않습니다. 나중에 다시 열 수 있습니다." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "도메인" @@ -12697,7 +12692,7 @@ msgstr "다른 사람을 더블 클릭하여 스트림을 시청하세요." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "네덜란드어" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "예: YubiKey, iPhone, 회사 컴퓨터" @@ -13092,7 +13087,7 @@ msgstr "이름, 설명, 아이콘 등 커뮤니티 전체 설정을 수정합니 #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "그룹 편집" @@ -13123,7 +13118,7 @@ msgstr "미디어 편집" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "메시지 수정" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "{windowEndsOn}까지 환불받을 수 있습니다. 구독도 즉시 취소됩니다." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "이메일" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "이모티콘 업데이트됨" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "이모티콘" @@ -13525,7 +13520,7 @@ msgstr "즐겨찾기 없음" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "활성화" @@ -13680,7 +13675,7 @@ msgstr "모바일 푸시 알림 켜기" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "알림 켜기" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "인증 정보를 설정한 연동 기능을 켜세요. 사용 가능한 서비스만 표시됩니다." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "2단계 인증 설정하기" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "영어(미국)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "향상됨" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "새 이메일 주소 입력" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "패스키를 사용할 수 없는 경우 백업 코드 중 하나를 입력하세요." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "백업 코드 중 하나를 입력하세요." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "텍스트 입력" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "인증 앱의 {digitCount}자리 코드나 백업 코드를 입력하세요." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "계속하려면 코드를 입력하세요." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "인증 앱의 코드를 입력하세요." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "이름을 입력하세요" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "비밀번호를 입력하세요." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "<0>{expiredDate}에 만료되었습니다. <1/>은 더 이상 활성화되지 않습니다. 언제든지 다시 구독할 수 있습니다." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "만료" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "표현 자동 완성" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "표현 선택기 카테고리" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "이모티콘을 준비하지 못했습니다" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "자른 이미지를 처리하지 못했습니다. 다시 시도해 주세요." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "SSO를 시작하지 못했습니다" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "계정 전환 실패" @@ -15053,7 +15048,7 @@ msgstr "즐겨찾기" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "즐겨찾기" @@ -15268,6 +15263,11 @@ msgstr "계정 설정 완료" msgid "Finish account setup first" msgstr "먼저 계정 설정을 완료하세요" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "새 탭에서 완료하세요. 탭을 닫았다면 '패스키로 계속하기'를 다시 누르세요." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "폴더 이름" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "폴더 설정" @@ -15479,7 +15479,7 @@ msgstr "직접 구매" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "이 확인 절차에서는 메시지를 받는 대신 저희에게 문자 메시지를 보내주셔야 합니다." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "안전을 위해 본인 확인 후 계속해 주세요." @@ -15606,7 +15606,7 @@ msgstr "비밀번호 찾기" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "비밀번호를 잊으셨나요?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "친구 및 소규모 커뮤니티에만 공개" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "친구의 친구" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "일반" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "독일" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "{premiumProductName} 이용하기" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF URL" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "전역 단축키" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "뒤로 가기" @@ -16374,6 +16374,11 @@ msgstr "뒤로 가기" msgid "Go back and enter a valid email." msgstr "돌아가서 유효한 이메일을 입력하세요." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "{productName}(으)로 돌아가 계속하세요." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "만료 각주 숨기기" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "즐겨찾기 숨기기" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "음소거 숨기기" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "음소거된 채널 숨기기" @@ -17358,7 +17363,7 @@ msgstr "계정" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "자리 비움" @@ -17818,7 +17823,7 @@ msgstr "부적절한 프로필" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "받은 메시지함" @@ -17867,7 +17872,7 @@ msgstr "커뮤니티 ID를 포함하세요." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "초대 페이지 미리보기" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "친구 초대" @@ -18456,7 +18461,7 @@ msgstr "초대자:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "초대" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "통화 참여" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "커뮤니티 참여하기" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "{productName} 가입일" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "이동" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "이 커뮤니티에서 멤버를 추방합니다." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "멤버 추방" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "통화 나가기" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "커뮤니티 나가기" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "링크 빌더" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "링크가 클립보드에 복사되었습니다" @@ -19859,8 +19864,8 @@ msgstr "악성코드 또는 위험한 링크" msgid "Malware, credential theft, or harmful files." msgstr "악성코드, 계정 정보 탈취 또는 유해 파일." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "관리" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "계정 관리" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "계정에 액세스할 수 있는 앱과 장치를 관리합니다" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "받은 메시지함의 읽지 않은 모든 채널을 확인 요청 없이 즉시 읽음으로 표시" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "읽음으로 표시" @@ -20021,7 +20026,7 @@ msgstr "스포일러로 표시" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "안 읽음으로 표시" @@ -20169,7 +20174,7 @@ msgstr "성인 커뮤니티" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "성인 콘텐츠" @@ -20315,7 +20320,7 @@ msgstr "측정 중…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "멤버" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "멤버" @@ -20616,7 +20621,7 @@ msgstr "이 역할을 멘션할까요?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "멘션" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "기타 미디어 작업" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "더 보기" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "통화 알림 끄기" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "카테고리 알림 끄기" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "커뮤니티 알림 끄기" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "커뮤니티 알림 끄기" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "입장 효과음 음소거" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "즐겨찾기 알림 끄기" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "이름은 2자 이상이어야 합니다" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "패스키 이름 지정" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "패스키 이름 양식" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "네브래스카" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "계정이 없으신가요?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "네바다" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "안 함" @@ -22276,7 +22281,7 @@ msgstr "최신순" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "다음" @@ -22905,7 +22910,7 @@ msgstr "사용자를 찾을 수 없습니다" msgid "No verification is required." msgstr "인증이 필요하지 않습니다." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "사용 가능한 인증 방법 없음" @@ -23038,11 +23043,13 @@ msgstr "페이지를 찾을 수 없음" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "나중에" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "메모 (나에게만 보임)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "없음" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "개별 알림 설정" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "알림 설정" @@ -23152,7 +23159,7 @@ msgstr "알림 소리 크기" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "꺼짐" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "오프라인" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "확인" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "확인" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "온라인" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "온라인" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "\"{manageCommunityPermissionLabel}\" 권한이 있는 멤버만 변경할 수 있습니다." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "멘션만" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "설정에서 {labelText} 열기" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "{landmarkName} 열기" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "열려 있는 DM" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "DM 열기" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "{invoiceLabel} 인보이스 열기" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "링크 열기" @@ -23850,7 +23857,7 @@ msgstr "빠른 전환 열기" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "설정 열기" @@ -23935,11 +23942,6 @@ msgstr "테마 스튜디오 팝업 열기" msgid "Open theme studio…" msgstr "테마 스튜디오 열기…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "{productName}에서 이 창을 열어 패스키를 사용하세요." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "옵션" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "패스키" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "패스키 이름" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "패스키가 업데이트되었습니다" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "패스키" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "패스키를 사용하려면 유효한 앱 식별자가 있는 서명된 macOS 번들이 필요합니다. 서명된 데스크톱 클라이언트를 설치하고 다시 시도하세요." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "비밀번호" msgid "Password changed" msgstr "비밀번호 변경 완료" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "이 웹 주소에서는 비밀번호 관리자가 패스키를 제공하지 않을 수 있습니다. 대신 이전 주소의 팝업 창에서 시도해 보세요." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "메시지 링크를 붙여넣으세요." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "개인 사전" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "개인 노트" @@ -24885,7 +24887,7 @@ msgstr "그룹 DM 고정" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "메시지 고정" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "고정됨" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "고정된 DM" @@ -25020,7 +25022,7 @@ msgstr "플랫폼 관리자" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "재생" @@ -25318,6 +25320,11 @@ msgstr "연결할 키, 마우스 버튼 또는 게임패드 버튼을 누르세 msgid "Press a shortcut…" msgstr "단축키를 누르세요…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "'계속'을 눌러 패스키를 사용하세요." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "기본 언어" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "기본 탐색" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "개인정보처리방침" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "개인 정보 보호 설정" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "꿀팁:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "계속하기" @@ -26090,7 +26097,7 @@ msgstr "{emojiShortcode}(으)로 반응하기" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "재생성하면 현재 토큰이 무효화됩니다. 이전 값을 사용하는 코드를 모두 업데이트하세요." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "가입하기" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "등록된 패스키" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "배너 삭제" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "북마크 삭제" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "사전에서 삭제" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "즐겨찾기에서 삭제" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "즐겨찾는 GIF에서 삭제됨" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "즐겨찾기에서 삭제됨" @@ -27032,7 +27039,7 @@ msgstr "권한을 삭제하면 봇 기능이 제한될 수 있습니다." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "타임아웃을 해제하면 <0>{targetUserTag}님이 메시지를 보내고, 반응하고, 음성 채널에 다시 참여할 수 있습니다." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "이름 변경" @@ -27119,7 +27126,7 @@ msgstr "답장" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "답장" @@ -27209,7 +27216,7 @@ msgstr "문제 신고" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "메시지 신고" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "모더레이션 작업에 2단계 인증 필수" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "패스키를 두 번째 인증 수단으로 요구" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "재설정 링크가 유효하지 않거나 만료되었습니다" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "성인 콘텐츠 동의 상태 재설정" @@ -27880,7 +27887,7 @@ msgstr "이미지 검색" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "역방향 이미지 검색" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "검토 및 확인" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "계정에 액세스할 수 있는 앱을 검토하세요." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "이전 구매 내역 및 환불 옵션 검토" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "로그인된 기기를 검토하고 알 수 없는 세션을 로그아웃하세요." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "역할 업데이트됨" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "역할" @@ -28261,7 +28268,7 @@ msgstr "채도" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "범위" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "범위" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "화면 낭독기" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "채널, 사람 또는 커뮤니티 검색" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "친구 검색" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "선택한 텍스트 검색" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "설정 검색" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "설정 검색…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "보안" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "보안 기능" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "보안 키" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "보안 키/패스키" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "민감한 미디어" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "보냄" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "세션" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "{identifier} 계정의 세션이 만료되었습니다. 다시 로그인하세요." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "모든 효과음의 볼륨을 설정합니다. 개별 효과음 설정은 이 설정을 무시합니다." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "설정 열림." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "설정 섹션" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "사이드바" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "로그인" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "선물을 받으려면 로그인하세요" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "브라우저로 로그인" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "패스키로 로그인" @@ -30666,7 +30673,7 @@ msgstr "소속 기관의 SSO 공급자로 로그인하세요." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "로그아웃" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "로그인 정보" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "로그인 절차" @@ -31189,7 +31196,7 @@ msgstr "일부 사용자는 추가할 수 없습니다" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "문제가 발생했습니다" @@ -31374,7 +31381,7 @@ msgstr "소리 볼륨" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "소리" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "메시지 입력란에 첨부 파일이 추가되는 즉시 업로드를 시작합니다" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "영상 통화 시작" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "음성 통화 시작" @@ -31899,7 +31906,7 @@ msgstr "스티커" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "스티커: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "스티커" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "모든 링크 신뢰를 중단할까요?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "2단계 인증에 패스키 사용을 중단하시겠어요?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "모든 역할 멘션 숨기기" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "미리보기 숨기기" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "텍스트 채널" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "텍스트 채널" @@ -33055,7 +33062,7 @@ msgstr "휴대폰으로 문자 보내기" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "텍스트 음성 변환" @@ -33119,6 +33126,11 @@ msgstr "완료되지 않았습니다. 일부 커뮤니티는 이미 나가졌을 msgid "That did not go through. Nothing changed. Try again." msgstr "처리되지 않았습니다. 변경된 내용은 없습니다. 다시 시도해 주세요." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "완료하지 못했습니다. 다시 시도하거나 취소하세요." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "유효한 색상이 아닌 것 같아요. HEX, rgb(), hsl() 또는 CSS 색상 이름을 사용해 보세요." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "해당 이미지를 사용할 수 없습니다. 다른 파일을 시도해 보세요." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "이미지가 유효하지 않습니다. 다른 이미지를 시도해 보세요." @@ -34035,11 +34047,11 @@ msgstr "두 번째 옵션에 대한 설명입니다" msgid "This is the third option description" msgstr "세 번째 옵션 설명입니다" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "이것이 마지막 패스키이며, 패스키가 두 번째 인증 수단입니다. 삭제하면 계정의 2단계 인증이 해제되고 현재 백업 코드도 더 이상 작동하지 않습니다." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "이것이 마지막 패스키입니다. 삭제하고 나면 패스키를 두 번째 인증 수단으로 사용할 수 없습니다." @@ -34154,16 +34166,6 @@ msgstr "이 참가자는 소리 꺼짐 상태입니다" msgid "This participant was deafened by moderators" msgstr "이 참가자는 모더레이터가 소리를 껐습니다" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "이 패스키 요청을 확인할 수 없습니다. 이 창을 닫고 다시 시도하세요." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "이 패스키 요청이 시간 초과되었습니다. 이 창을 닫고 다시 시도하세요." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "모든 신뢰하는 도메인이 제거됩니다. 모든 도메인에 msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "모든 사용자 지정 단축키를 제거하고 내장 단축키를 다시 활성화합니다. 이 작업은 되돌릴 수 없습니다." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "이 요청이 만료되었습니다. 돌아가서 다시 시도하세요." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "이 비밀번호 재설정 링크는 만료되었습니다. 링크는 1시간 동안 유효합니다. 새 링크를 요청해 주세요." @@ -34807,7 +34814,7 @@ msgstr "{userName}님에게 그룹 소유권을 이전하시겠어요?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "소유권 이전" @@ -34823,7 +34830,7 @@ msgstr "{0}님에게 소유권을 이전했습니다" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "번역" @@ -34980,7 +34987,7 @@ msgstr "다른 변수 이름을 사용하거나 검색을 지워주세요." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "다시 시도" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "다시 시도" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "잠시 후에 다시 시도해 주세요." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "\"테마\", \"알림\", \"개인정보 보호\" 등으로 검색해 보세요" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "보안 키/패스키로 시도하기" @@ -35088,7 +35095,7 @@ msgstr "튀르키예어" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "끄기" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "이 소스의 오디오 공유를 끄거나 잠시 후 다시 시도하세요." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "카메라 끄기" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "로그인 또는 계정 보안 세부 정보를 보려면 스트리밍 개인 정보 보호를 끄세요." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "켜기" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "2단계 인증" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "2단계 인증" @@ -35288,7 +35295,7 @@ msgstr "2단계 인증이 해제되었습니다" msgid "Two-factor authentication enabled" msgstr "2단계 인증이 설정되었습니다" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "2단계 인증이 사용 설정되었습니다" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "차단 해제" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "미분류" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "웹사이트 링크에 밑줄을 표시합니다" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "확인" @@ -35643,7 +35650,7 @@ msgstr "범용 대체 코덱. 화질은 가장 낮지만, 모든 환경에서 #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "모든 기기 음소거 해제" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "카테고리 알림 켜기" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "커뮤니티 알림 켜기" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "커뮤니티 알림 켜기" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "DM 알림 켜기" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "즐겨찾기 알림 켜기" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "고정 해제" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "메시지 고정 해제" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "이 메시지의 고정을 해제할까요?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "고정 해제된 DM" @@ -36193,6 +36200,11 @@ msgstr "이메일 업데이트" msgid "Update my status" msgstr "내 상태 업데이트" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "패스키 업데이트" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "타임아웃 업데이트" msgid "Update your own nickname." msgstr "내 닉네임을 변경합니다." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "패스키를 업데이트하세요" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "{readMessageHistoryPermissionLabel} 권한이 없는 멤버를 위한 msgid "Use a different email address and verify it with a code." msgstr "다른 이메일 주소를 사용하고 코드로 인증하세요." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "비밀번호 관리자의 패스키 사용" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "실제 값 사용" msgid "Use alternative method" msgstr "다른 방법 사용" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "인증 앱을 사용하여 2단계 인증 코드를 생성합니다" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "{productName}의 규칙을 명확히 위반하고 위에 해당하지 않는 경우에만 사용하세요." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "패스키를 2단계 인증에 사용하시겠어요?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "패스키를 사용하여 비밀번호 없이 로그인합니다" @@ -36824,8 +36836,8 @@ msgstr "음성 자동 감지 사용" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "사용 가능한 경우 운영체제의 맞춤법 검사기를 사용하고, 그렇지 않으면 {productName}의 인앱 사전을 사용합니다." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "패스키 사용" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "사용자 컨트롤" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "사용자 디버그" @@ -36972,7 +36984,7 @@ msgstr "사용자 볼륨" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "인증 취소됨" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "인증 코드" @@ -37185,7 +37197,7 @@ msgstr "인증 이메일을 보냈습니다. 받은편지함을 확인해 주세 msgid "Verification expired" msgstr "인증 만료" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "인증된 커뮤니티" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "인증하기" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "연결 확인" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "이메일 인증" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "본인 확인 양식" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "본인 인증하기" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "친구 요청을 보내려면 이메일 주소를 인증하세요." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "패스키를 추가하기 전에 이메일을 인증하세요." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "인증 앱을 추가하기 전에 이메일을 인증하세요." @@ -37571,7 +37583,7 @@ msgstr "차단된 사용자를 확인하고 관리합니다." msgid "View and manage every webhook configured across your community." msgstr "커뮤니티에 설정된 모든 웹훅을 확인하고 관리합니다." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "계정 복구를 위한 백업 코드 확인 및 관리" @@ -37605,7 +37617,7 @@ msgstr "채널 보기" msgid "View channel members" msgstr "채널 멤버 보기" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "코드 보기" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "요금제 보기" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "프로필 보기" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "음성 채널" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "음성 채널" @@ -38073,7 +38085,7 @@ msgstr "무효" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "잠시만 기다려 주세요" msgid "Waiting for connection..." msgstr "연결 대기 중..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "패스키를 기다리는 중…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "시청하기" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "스트림 시청" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "웹사이트 미리보기" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "다시 오신 것을 환영합니다" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "현재 참여 중인 커뮤니티가 없습니다." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "{userName}님을 차단했습니다. 차단을 해제해야 메시지를 보낼 수 있습니다." @@ -39101,6 +39113,11 @@ msgstr "14일 이내에 계정 삭제를 취소할 수 있습니다" msgid "You can close this modal. The import will continue in the background." msgstr "이 창을 닫아도 가져오기는 백그라운드에서 계속됩니다." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "이 탭을 닫을 수 있습니다" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "이제 이 탭을 닫고 앱으로 돌아가셔도 됩니다." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "자신에게 친구 요청을 보낼 수 없습니다." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "이 채널에서는 메시지를 보낼 수 없습니다." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "이메일 단계는 여전히 완료해야 합니다." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "더 이상 로그인 시 비밀번호 입력 후 패스키를 요청하지 않습니다. 인증 앱은 계속해서 두 번째 인증 수단으로 사용됩니다." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "로그아웃된 모든 기기에서 다시 로그인해야 합니다" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "새 기기에서 로그인하려면 등록된 패스키 중 하나가 필요합니다. 패스키를 모두 잃어버리면 계정에 영구적으로 접근하지 못할 수 있습니다. 백업 코드가 저장되므로 계정에 들어갈 방법은 남아 있습니다." @@ -39918,12 +39935,12 @@ msgstr "계정을 만든 지 얼마 되지 않아 이 커뮤니티에서 메시 msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "계정 요청이 승인 대기 중입니다. 관리자가 승인한 후 로그인할 수 있습니다." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "계정에 다단계 인증이 필요하지만, 이 기기에는 지원되는 방법이 설정되어 있지 않습니다. 인증 앱 또는 보안 키가 있는 기기에서 로그인하거나 지원팀에 문의하세요." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "비밀번호로 로그인할 때 더 이상 2단계 인증으로 계정이 보호되지 않습니다. 또한 2단계 인증이 필요한 커뮤니티에서는 상위 권한도 사용할 수 없게 됩니다." @@ -39941,16 +39958,6 @@ msgstr "요청하신 작업이 안전 시스템에 감지되어 완료되지 않 msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "신청이 검토 대기 중입니다. 등록 정보를 업데이트하거나 신청을 철회할 수 있습니다." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "브라우저에서 이 사이트의 팝업 창을 차단했습니다. 팝업을 허용한 후 다시 시도하세요." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "이 도메인에서는 브라우저에서 패스키를 지원하지 않습니다. 브라우저를 업데이트하거나 비밀번호와 2단계 인증 코드로 로그인하세요." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "커뮤니티를 디스커버리에 등록하려면 멤버가 최소 {min msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "신용카드 확인이 완료되었습니다. 유효한 카드인 경우, 성인 콘텐츠가 곧 잠금 해제됩니다. 이 탭을 닫고 앱으로 돌아가세요." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "기기에서 {name}의 업데이트된 패스키를 저장하라는 메시지가 표시됩니다. 이전 패스키를 대체합니다." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "기기에서 {name}의 업데이트된 패스키를 저장하라는 메시지가 표시됩니다. 방금 사용한 것과 동일한 휴대폰 또는 보안 키를 사용하세요." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "확대/축소" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "확대" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/lt/messages.po b/fluxer_app/src/features/i18n/locales/lt/messages.po index e179261b6..e3da87eca 100644 --- a/fluxer_app/src/features/i18n/locales/lt/messages.po +++ b/fluxer_app/src/features/i18n/locales/lt/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {narys} few {nariai} other {narių}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# paminėjimas} few {# paminėjimai} many {# paminėjimo} other {# paminėjimų}}" @@ -2370,8 +2370,8 @@ msgstr "6 mėnesiai" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6 skaitmenų kodas" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Paskyros ir Premium perrašymai" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Paskyros prieiga" @@ -2807,7 +2807,7 @@ msgstr "Aktyvus mėnesinis prenumeratorius (suplanuotas atšaukimas)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Norėdami tęsti, pridėkite paskyrą." msgid "Add an email and password to your account first." msgstr "Pirmiausia pridėkite prie paskyros el. pašto adresą ir slaptažodį." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Pridėkite papildomą saugumo lygį savo paskyrai" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Pridėti botą į paskirties vietą" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Pridėti kanalą" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Pridėti naujų reakcijų į žinutes." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Pridėti pastabą" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Pridėti perrašymą" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Pridėti prieigos raktą" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Pridėti reakciją" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Pridėti į žodyną" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Pridėti prie mėgstamiausių" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Pridėta prie mėgstamiausių GIF" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Pridėta prie mėgstamiausių" @@ -3296,11 +3296,11 @@ msgstr "Pridėta prie mėgstamiausių" msgid "Added to saved media" msgstr "Įtraukta į išsaugotą mediją" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Pridėta: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Pridėta: {createdDate} • paskutinį kartą naudota: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Visos kalbos" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Visos žinutės" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Jau ištrinta" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Jau turite paskyrą?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Programėlės mastelis" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Programėlės mastelio lygis" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Patvirtinti" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Patvirtinkite šią programėlę iš jau naudojamos {productName} programėlės. Slaptažodis nereikalingas." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Ar tikrai norite ištrinti kategoriją „{categoryName}“? Šio veiksmo anuliuoti negalima." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Ar tikrai norite ištrinti prieigos raktą <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Ar tikrai norite ištrinti šį priedą? Šio veiksmo anuliuoti negalima msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Ar tikrai norite ištrinti šią bendruomenę? Šio veiksmo anuliuoti negalima. Visi kanalai, žinutės ir nustatymai bus visam laikui ištrinti." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Ar tikrai norite ištrinti šį prieigos raktą?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Prieš pradedant skambučius, paprašyti patvirtinimo" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Prisijungiant po slaptažodžio prašyti ir prieigos rakto" @@ -4690,7 +4690,7 @@ msgstr "Priedai" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Garsas" @@ -4851,14 +4851,14 @@ msgstr "Autentifikavimas" msgid "Authenticator" msgstr "Autentifikatorius" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Autentifikavimo programėlė" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Autentifikatoriaus kodas" @@ -4928,7 +4928,7 @@ msgstr "Įgaliotosios programos" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Šiuo metu nesu prie kompiuterio" msgid "Back" msgstr "Atgal" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Atgal į {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Atgal į vaidmenis" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Grįžti į nustatymus" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Grįžti prie prisijungimo" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Atsarginis kodas" @@ -5351,7 +5356,7 @@ msgstr "Atsarginis kodas" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Pasiektas žymių limitas" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Skambučiai" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera išjungta" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera įjungta" @@ -6364,9 +6369,9 @@ msgstr "Čia negalima įkelti failų" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Čia negalima įkelti failų" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Keisti jaustuką" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Pakeisti draugo slapyvardį" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Keisti savo slapyvardį grupėje" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Keisti slapyvardį" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Kanalo veiksmai" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanalas pridėtas prie mėgstamiausių" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanalas sukurtas" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Kanalo derinimas" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanalas ištrintas" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Kanalo įrašas" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanalas pašalintas iš mėgstamiausių" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Pasirinkite profilio akcento spalvą" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Užregistruoti paskyrą" @@ -7715,7 +7720,7 @@ msgstr "Norėdami siųsti pranešimus, užregistruokite paskyrą ir patvirtinkit msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Užregistruokite paskyrą pridėdami el. pašto adresą ir slaptažodį. Prieš baigiant atsiųsime patvirtinimo kodą jūsų el. pašto adresui patvirtinti." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Užregistruokite paskyrą, kad galėtumėte naudotis saugos funkcijomis, pvz., dviejų veiksnių autentifikavimu ir prieigos raktais." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Išvalyti greitąjį CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Išvalyti paiešką" @@ -8103,7 +8108,7 @@ msgstr "Klonavimas išjungtas" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Uždaryti" @@ -8160,11 +8165,9 @@ msgstr "Uždaryti į meniu juostą" msgid "Close to tray" msgstr "Uždaryti į dėklą" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Uždaryti langą" @@ -8456,7 +8459,7 @@ msgstr "Bendravimas" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Bendruomenės derinimas" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Bendruomenės numatytasis" @@ -8577,7 +8580,7 @@ msgstr "Bendruomenės nario įrašas" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Bendruomenės nariai" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Bendruomenės pranešimų lygis" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Bendruomenės pranešimų nustatymai" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Palyginimas" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Užbaigti brandaus turinio patikrą" @@ -9093,7 +9096,7 @@ msgstr "Ryšys: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Kontekstiniai meniu atidaromi kairiuoju pelės mygtuku (ant mygtukų) ar #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Tęsti" msgid "Continue to checkout" msgstr "Tęsti atsiskaitymą" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Tęskite, kad sukurtumėte prieigos raktą, skirtą {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Tęsti ir pranešti apie bendruomenę" msgid "Continue to report user" msgstr "Tęsti ir pranešti apie naudotoją" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Tęsti su prieigos raktu" @@ -9238,11 +9238,6 @@ msgstr "Tęsti su prieigos raktu" msgid "Continue with SSO" msgstr "Tęsti su SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Tęskite su prieigos raktu, kad prisijungtumėte prie {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Koordinuoja reidus, masinius puolimus ar priekabiavimą prieš asmenis a #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Nukopijuota" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kopijuoti kategorijos ID" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kopijuoti kanalo ID" @@ -9421,12 +9416,12 @@ msgstr "Kopijuoti kanalo nuorodą" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Kopijuoti kodą" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Kopijuoti bendruomenės ID" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Kopijuoti kvietimo URL" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Kopijuoti žinutę" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Kopijuoti žinutės ID" @@ -9570,7 +9565,7 @@ msgstr "Kopijuoti žinutės ID" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Kopijuoti lipduko URL" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Nukopijuokite sąrankos raktą į savo autentifikavimo programėlę." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Kopijuoti naudotojo ID" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Kopijuoti naudotojo vardą" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Nepavyko ištrinti programos" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Nepavyko ištrinti prieigos rakto" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Nepavyko išsiųsti kvietimo" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Nepavyko išsiųsti kvietimo. Bandykite dar kartą." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Nepavyko atnaujinti paminėjimų slopinimo apėjimo" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Nepavyko atnaujinti dviejų veiksnių autentifikavimo prieigos raktais" @@ -10206,6 +10201,11 @@ msgstr "Nepavyko atnaujinti alternatyviojo teksto. Bandykite dar kartą." msgid "Couldn't update voice activity sharing right now" msgstr "Šiuo metu nepavyko atnaujinti balso aktyvumo bendrinimo" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Nepavyko atnaujinti jūsų prieigos rakto. Bandykite dar kartą." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Nepavyko įkelti avataro" msgid "Couldn't upload banner" msgstr "Nepavyko įkelti reklamjuostės" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Nepavyko panaudoti prieigos rakto iššokančiajame lange. Bandykite dar kartą." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Nepavyko patvirtinti kodo. Bandykite dar kartą." msgid "Couldn't verify the connection" msgstr "Nepavyko patvirtinti ryšio" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Nepavyko patvirtinti naudojant prieigos raktą. Bandykite dar kartą." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Jaukus" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Sukurti" @@ -10298,7 +10293,7 @@ msgstr "Sukurti naują grupę su „{userName}“" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Sukurti programą" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Sukurti kategoriją" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Sukurti kanalą" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Kurti bendruomenę" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Pasirinktinis įspėjimo tekstas" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Pasirinktinis…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Derinimas" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Derinti kanalą" @@ -11164,7 +11159,7 @@ msgstr "Derinti žinutę" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Derinti naudotoją" @@ -11315,7 +11310,7 @@ msgstr "Delaveras" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Ištrinti {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Ištrinti paskyrą" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Ištrinti programą" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Ištrinti priedą" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Ištrinti mediją" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Ištrinti žinutę" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Ištrinti kitų narių žinutes. Prisegimas valdomas atskirai." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Ištrinti prieigos raktą" @@ -11701,7 +11696,7 @@ msgstr "Apibūdinkite, kam skirta jūsų bendruomenė" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Aprašymas" @@ -11966,7 +11961,7 @@ msgstr "Įrenginys:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Tiesioginė įvestis" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Tiesioginė žinutė" @@ -12050,7 +12045,7 @@ msgstr "Tiesioginių žinučių peržiūros" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Tiesioginės žinutės" @@ -12077,14 +12072,14 @@ msgstr "Tiesioginis įkėlimas aktyvus" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Išjungti" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Išjungti paskyrą" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Atjungta" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Atrandama bendruomenė" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Diskriminatorius" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Atmesti" @@ -12477,7 +12472,7 @@ msgstr "DM ir draugystės užklausų nustatymai" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM uždarytas" @@ -12607,7 +12602,7 @@ msgstr "Neužblokuoja. Vėliau galėsite jį vėl atidaryti." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domenas" @@ -12697,7 +12692,7 @@ msgstr "Dukart spustelėkite dalyvį, kad pradėtumėte žiūrėti jo srautą." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "olandų" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "pvz., YubiKey, iPhone, darbinis kompiuteris" @@ -13092,7 +13087,7 @@ msgstr "Redaguoti bendruosius nustatymus, pvz., pavadinimą, aprašą ir piktogr #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Redaguoti grupę" @@ -13123,7 +13118,7 @@ msgstr "Redaguoti mediją" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Redaguoti žinutę" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Galite susigrąžinti pinigus iki {windowEndsOn}. Tai taip pat nedelsiant atšauks jūsų prenumeratą." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "El. paštas" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Jaustukas atnaujintas" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Jaustukai" @@ -13525,7 +13520,7 @@ msgstr "Nėra mėgstamiausių" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Įjungti" @@ -13680,7 +13675,7 @@ msgstr "Įjungti tiesioginius pranešimus mobiliajame įrenginyje" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Įjungti pranešimus" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Įjunkite integracijas, kurių kredencialus sukonfigūravote. Rodomos tik pasiekiamos paslaugos." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Įjungti dviejų veiksnių autentifikavimą" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Anglų (JAV)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Patobulinta" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Įveskite naują el. pašto adresą" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Įveskite vieną iš atsarginių kodų, jei negalite pasinaudoti prieigos raktu." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Įveskite vieną iš atsarginių kodų." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Įveskite tekstą" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Įveskite {digitCount} skaitmenų kodą iš autentifikavimo programėlės arba atsarginį kodą." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Įveskite kodą prieš tęsdami." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Įveskite kodą iš autentifikavimo programėlės." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Įveskite savo vardą" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Įveskite slaptažodį." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Baigėsi <0>{expiredDate}. <1/> nebėra aktyvūs. Galite vėl užsiprenumeruoti bet kada." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Baigiasi" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Išraiškų automatinis pildymas" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Išraiškų parinkiklio kategorijos" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Nepavyko paruošti jaustukų" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Nepavyko apdoroti apkarpyto vaizdo. Bandykite dar kartą." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Nepavyko paleisti SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Nepavyko perjungti paskyros" @@ -15053,7 +15048,7 @@ msgstr "Mėgstamiausi" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Mėgstamiausi" @@ -15268,6 +15263,11 @@ msgstr "Baigti paskyros nustatymą" msgid "Finish account setup first" msgstr "Pirmiausia užbaikite paskyros nustatymą" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Užbaikite naujame skirtuke. Jei jį uždarėte, dar kartą paspauskite „Tęsti su prieigos raktu“." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Aplanko pavadinimas" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Aplanko nustatymai" @@ -15479,7 +15479,7 @@ msgstr "Man" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Šiam patikrinimui jūs mums siunčiate tekstinę žinutę, o ne gaunate ją iš mūsų." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Siekdami užtikrinti jūsų saugumą, patvirtinkite, kad tai jūs." @@ -15606,7 +15606,7 @@ msgstr "Pamiršote slaptažodį" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Pamiršote slaptažodį?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Tik draugai ir mažos bendruomenės" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Draugų draugai" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Pagrindiniai" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Vokietija" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Gauti {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF nuorodos" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF'ai" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Visuotinis spartusis klavišas" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Grįžti" @@ -16374,6 +16374,11 @@ msgstr "Grįžti" msgid "Go back and enter a valid email." msgstr "Grįžkite ir įveskite galiojantį el. pašto adresą." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Grįžkite į {productName}, kad tęstumėte." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Slėpti galiojimo pabaigos išnašas" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Slėpti mėgstamiausius" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Slėpti nutildytus" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Slėpti nutildytus kanalus" @@ -17358,7 +17363,7 @@ msgstr "Tapatybė" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Neaktyvus" @@ -17818,7 +17823,7 @@ msgstr "Netinkamas profilis" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Gauta" @@ -17867,7 +17872,7 @@ msgstr "Įveskite bendruomenės ID." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Kvietimo puslapio peržiūra" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Kviesti žmones" @@ -18456,7 +18461,7 @@ msgstr "Pakvietė:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Kvietimai" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Prisijungti prie skambučio" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Prisijungti prie bendruomenės" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Prisijungė prie „{productName}“" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Pereiti" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Išmesti narį iš šios bendruomenės." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Išmesti narį" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Išeiti iš skambučio" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Palikti bendruomenę" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Nuorodų kūrimo įrankis" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Nuoroda nukopijuota į iškarpinę" @@ -19859,8 +19864,8 @@ msgstr "Kenkėjiškos programos arba pavojingos nuorodos" msgid "Malware, credential theft, or harmful files." msgstr "Kenkėjiškos programos, prisijungimo duomenų vagystė arba žalingi failai." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Tvarkyti" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Tvarkyti paskyras" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Tvarkykite programas ir įrenginius, turinčius prieigą prie jūsų paskyros" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Pažymėti visus neskaitytus gautųjų kanalus kaip perskaitytus iškart, neklausiant patvirtinimo" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Pažymėti kaip perskaitytą" @@ -20021,7 +20026,7 @@ msgstr "Pažymėti kaip spoilerį" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Pažymėti kaip neperskaitytą" @@ -20169,7 +20174,7 @@ msgstr "Brandaus turinio bendruomenė" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Brandus turinys" @@ -20315,7 +20320,7 @@ msgstr "Matuojama…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "nariai" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Nariai" @@ -20616,7 +20621,7 @@ msgstr "Paminėti šį vaidmenį?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Paminėjimai" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Daugiau medijos veiksmų" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Daugiau parinkčių" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Nutildyti skambučius" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Nutildyti kategoriją" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Nutildyti bendruomenes" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Nutildyti bendruomenę" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Nutildyti prisijungimo garsą" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Nutildyti mėgstamiausius" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Pavadinimas turi būti bent 2 simbolių ilgio" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Pavadinkite prieigos raktą" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Prieigos rakto pavadinimo forma" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Neturite paskyros?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Niekada" @@ -22276,7 +22281,7 @@ msgstr "Pirmiausia naujausi" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Kitas" @@ -22905,7 +22910,7 @@ msgstr "Naudotojų nerasta" msgid "No verification is required." msgstr "Patvirtinimas nereikalingas." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Nėra patvirtinimo metodų" @@ -23038,11 +23043,13 @@ msgstr "Nerasta" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Ne dabar" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Pastaba (matoma tik jums)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Nieko" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Pranešimų perrašymai" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Pranešimų nustatymai" @@ -23152,7 +23159,7 @@ msgstr "Pranešimų garsumas" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Išjungta" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Neprisijungęs" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Gerai" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "prisijungę" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Prisijungęs" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Tik nariai, turintys leidimą „{manageCommunityPermissionLabel}“, gali tai pakeisti." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Tik paminėjimai" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Atidaryti „{labelText}“ nustatymuose" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Atidaryti „{landmarkName}“" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Atviros tiesioginės žinutės" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Atidaryti DM" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Atidaryti sąskaitą faktūrą „{invoiceLabel}“" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Atidaryti nuorodą" @@ -23850,7 +23857,7 @@ msgstr "Atidaryti greitąjį perjungiklį" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Atidaryti nustatymus" @@ -23935,11 +23942,6 @@ msgstr "Atidaryti temų studijos iššokantįjį langą" msgid "Open theme studio…" msgstr "Atidaryti temų studiją…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Atidarykite šį langą per {productName}, kad galėtumėte naudoti savo prieigos raktą." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Parinktys" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Prieigos raktas" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Prieigos rakto pavadinimas" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Prieigos raktas atnaujintas" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Prieigos raktai" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Norint naudoti prieigos raktus, reikalingas pasirašytas „macOS“ paketas su galiojančiu programos identifikatoriumi. Įdiekite pasirašytą darbalaukio klientą ir bandykite dar kartą." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Slaptažodis" msgid "Password changed" msgstr "Slaptažodis pakeistas" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Slaptažodžių tvarkyklės šiuo žiniatinklio adresu gali nepasiūlyti jūsų prieigos rakto. Vietoj to pabandykite iššokančiajame lange senuoju adresu." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Įklijuokite žinutės nuorodą." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Asmeninis žodynas" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Asmeniniai užrašai" @@ -24885,7 +24887,7 @@ msgstr "Prisegti grupės DM" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Prisegti žinutę" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "prisegta" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Prisegtas DM" @@ -25020,7 +25022,7 @@ msgstr "Platformos administratorius" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Leisti" @@ -25318,6 +25320,11 @@ msgstr "Norėdami susieti, paspauskite klavišą, pelės mygtuką arba žaidimų msgid "Press a shortcut…" msgstr "Paspauskite spartųjį klavišą…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Paspauskite „Tęsti“, kad naudotumėte savo prieigos raktą." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Pagrindinė kalba" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Pagrindinė naršymo sritis" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Privatumo politika" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Privatumo nustatymai" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Patarimas:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Tęsti" @@ -26090,7 +26097,7 @@ msgstr "Reaguoti jaustuku {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Sugeneravus iš naujo, dabartinis prieigos raktas taps nebegaliojantis. Atnaujinkite visą kodą, kuriame naudojama sena reikšmė." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registruotis" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Registruoti prieigos raktai" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Pašalinti reklamjuostę" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Pašalinti žymę" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Pašalinti iš žodyno" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Pašalinti iš mėgstamiausių" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Pašalinta iš mėgstamiausių GIF" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Pašalinta iš mėgstamiausių" @@ -27032,7 +27039,7 @@ msgstr "Pašalinus leidimus, boto funkcijos gali būti apribotos." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Panaikinus laikinąjį apribojimą, <0>{targetUserTag} vėl galės siųsti žinutes, atlikti reakcijas ir prisijungti prie balso kanalų." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Pervadinti" @@ -27119,7 +27126,7 @@ msgstr "Atsakymai" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Atsakyti" @@ -27209,7 +27216,7 @@ msgstr "Pranešti apie problemą" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Pranešti apie žinutę" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Reikalauti 2FA moderavimo veiksmams" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Reikalauti prieigos rakto kaip antrojo veiksnio" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Slaptažodžio atkūrimo nuoroda negalioja arba baigėsi jos galiojimo laikas" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Iš naujo nustatyti sutikimo su brandaus turinio taisyklėmis būseną" @@ -27880,7 +27887,7 @@ msgstr "Atvirkštinė paieška" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Atvirkštinė vaizdų paieška" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Peržiūrėti ir patvirtinti" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Peržiūrėkite programų, kurios gali pasiekti jūsų paskyrą, sąrašą." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Peržiūrėti ankstesnius pirkimus ir grąžinimo parinktis" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Peržiūrėkite prisijungusius įrenginius ir atsijunkite nuo seansų, kurių neatpažįstate." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Vaidmuo atnaujintas" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Vaidmenys" @@ -28261,7 +28268,7 @@ msgstr "Sodrumas" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Sritis" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Leidimų sritys" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Ekrano skaitytuvas" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Ieškoti kanalų, žmonių ar bendruomenių" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Ieškoti draugų" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Ieškoti pažymėto teksto" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Ieškoti nustatymų" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Ieškoti nustatymų…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Sauga" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Saugos funkcijos" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Saugos raktas" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Saugos raktas / prieigos raktas" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Jautri medija" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Išsiųsta" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Seansas" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Seanso galiojimas baigėsi naudotojui „{identifier}“. Prisijunkite iš naujo." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Nustato visų garso efektų lygį. Atskirų garsų nustatymai šio nepaiso." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Nustatymai atidaryti." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Nustatymų skiltys" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Šoninė juosta" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Prisijungti" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Prisijunkite, kad atsiimtumėte dovaną" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Prisijungti per naršyklę" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Prisijungti naudojant prieigos raktą" @@ -30666,7 +30673,7 @@ msgstr "Prisijunkite naudodami savo organizacijos vieningo prisijungimo (SSO) te #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Atsijungti" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Prisijungimo duomenys" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Prisijungimo eiga" @@ -31189,7 +31196,7 @@ msgstr "Kai kurių naudotojų negalima pridėti" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Kažkas nepavyko" @@ -31374,7 +31381,7 @@ msgstr "Garsumas" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Garsai" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Priedai įkeliami iš karto, kai tik pridedami į žinutės lauką" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Pradėti vaizdo skambutį" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Pradėti balso skambutį" @@ -31899,7 +31906,7 @@ msgstr "lipdukas" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Lipdukas: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Lipdukai" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Nebepasitikėti visomis nuorodomis?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Nustoti naudoti prieigos raktus dviejų veiksnių autentifikavimui?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Slopinti visus vaidmenų paminėjimus" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Slėpti įterptuosius elementus" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "teksto kanalas" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Teksto kanalas" @@ -33055,7 +33062,7 @@ msgstr "Parašykite mums iš savo telefono" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Tekstas į kalbą" @@ -33119,6 +33126,11 @@ msgstr "Tai nebuvo baigta. Kai kurios bendruomenės galėjo būti jau paliktos, msgid "That did not go through. Nothing changed. Try again." msgstr "Nepavyko. Nieko nepakeista. Pabandykite dar kartą." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Nepavyko. Pabandykite dar kartą arba atšaukite." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Panašu, kad tai nėra tinkama spalva. Bandykite šešioliktainį kodą, rgb(), hsl() arba CSS spalvos pavadinimą." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Šio paveikslėlio naudoti nepavyko. Pabandykite kitą failą." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Šis paveikslėlis netinkamas. Pabandykite kitą." @@ -34035,11 +34047,11 @@ msgstr "Tai antrojo pasirinkimo aprašymas" msgid "This is the third option description" msgstr "Tai trečiojo pasirinkimo aprašymas" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Tai paskutinis jūsų prieigos raktas, o prieigos raktai yra jūsų antrasis veiksnys. Jį ištrynus jūsų paskyroje bus išjungtas dviejų veiksnių autentifikavimas, o dabartiniai atsarginiai kodai nustos veikti." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Tai paskutinis jūsų prieigos raktas. Kai jo nebeliks, negalėsite naudoti prieigos rakto kaip antrojo veiksnio." @@ -34154,16 +34166,6 @@ msgstr "Šiam dalyviui išjungtas garsas" msgid "This participant was deafened by moderators" msgstr "Šiam dalyviui garsą išjungė moderatoriai" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Šios prieigos rakto užklausos nepavyko patvirtinti. Uždarykite šį langą ir bandykite dar kartą." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Šios prieigos rakto užklausos laikas baigėsi. Uždarykite šį langą ir bandykite dar kartą." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Tai pašalina visus patikimus domenus. Vėl matysite išorinės nuorodos msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Tai pašalina visus pasirinktinius sparčiuosius klavišus ir iš naujo įgalina visus integruotus sparčiuosius klavišus. Šio veiksmo anuliuoti negalima." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Šios užklausos galiojimas baigėsi. Grįžkite ir bandykite dar kartą." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Ši naujo slaptažodžio nuoroda nebegalioja. Nuorodos galioja 1 valandą. Paprašykite naujos." @@ -34807,7 +34814,7 @@ msgstr "Perduoti grupės nuosavybę naudotojui „{userName}“?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Perduoti nuosavybę" @@ -34823,7 +34830,7 @@ msgstr "Nuosavybė perduota naudotojui „{0}“" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Versti" @@ -34980,7 +34987,7 @@ msgstr "Pabandykite kitą kintamojo pavadinimą arba išvalykite paiešką." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Bandyti dar kartą" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Bandyti dar kartą" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Bandyti dar kartą po akimirkos." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Pabandykite ieškoti ko nors panašaus į „tema“, „pranešimai“ ar „privatumas“" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Vietoj to naudokite saugos raktą / prieigos raktą" @@ -35088,7 +35095,7 @@ msgstr "turkų" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Išjungti" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Išjunkite šio šaltinio garso bendrinimą arba pabandykite dar kartą po akimirkos." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Išjungti kamerą" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Išjunkite srautinio perdavimo privatumą prieš peržiūrėdami prisijungimo ar paskyros saugos duomenis." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Įjungti" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Dviejų veiksnių" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Dviejų veiksnių autentifikavimas" @@ -35288,7 +35295,7 @@ msgstr "Dviejų veiksnių autentifikavimas išjungtas" msgid "Two-factor authentication enabled" msgstr "Dviejų veiksnių autentifikavimas įjungtas" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Dviejų veiksnių autentifikavimas įjungtas" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Atblokuoti naudotoją" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Nekategorizuota" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Pabraukti svetainių nuorodas" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Supratau" @@ -35643,7 +35650,7 @@ msgstr "Universalus atsarginis variantas. Žemiausia kokybė, bet veikia visur." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Įjungti garsą visuose įrenginiuose" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Įjungti kategorijos garsą" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Įjungti bendruomenių garsą" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Įjungti bendruomenės garsą" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Įjungti DM pokalbių garsą" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Įjungti mėgstamiausių garsą" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Atsegti" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Atsegti žinutę" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Atsegti šią žinutę?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "DM atsegtas" @@ -36193,6 +36200,11 @@ msgstr "Atnaujinti el. paštą" msgid "Update my status" msgstr "Atnaujinti mano būseną" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Atnaujinti prieigos raktą" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Atnaujinti laikiną apribojimą" msgid "Update your own nickname." msgstr "Atnaujinkite savo slapyvardį." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Atnaujinkite savo prieigos raktą" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Atskirame lange nustatykite žinučių istorijos ribinę datą nariams, msgid "Use a different email address and verify it with a code." msgstr "Naudokite kitą el. pašto adresą ir patvirtinkite jį kodu." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Naudoti slaptažodžių tvarkyklės prieigos raktą" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Naudoti tikrąją reikšmę" msgid "Use alternative method" msgstr "Naudoti kitą būdą" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Naudokite autentifikavimo programėlę dviejų veiksnių autentifikavimo kodams generuoti" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Naudokite tik tuo atveju, jei tai aiškiai pažeidžia {productName} taisykles ir netinka aukščiau nurodytiems atvejams." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Naudoti prieigos raktus dviejų veiksnių autentifikavimui?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Naudokite prieigos raktus, kad prisijungtumėte be slaptažodžio" @@ -36824,8 +36836,8 @@ msgstr "Naudoti balso aktyvavimą" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Naudokite savo operacinės sistemos rašybos tikrintuvą, jei jis pasiekiamas. Kitu atveju naudokite {productName} programoje esančius žodynus." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Naudokite savo prieigos raktą" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Naudotojo valdikliai" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Naudotojo derinimas" @@ -36972,7 +36984,7 @@ msgstr "Naudotojo garsumas" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Patvirtinimas atšauktas" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Patvirtinimo kodas" @@ -37185,7 +37197,7 @@ msgstr "Patvirtinimo el. laiškas išsiųstas. Patikrinkite gautuosius." msgid "Verification expired" msgstr "Patvirtinimo laikas baigėsi" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Patvirtinta bendruomenė" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Patvirtinti" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Patvirtinti ryšį" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Patvirtinti el. paštą" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Tapatybės patvirtinimo forma" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Patvirtinkite, kad tai jūs" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Patvirtinkite savo el. pašto adresą, kad galėtumėte siųsti draugystės užklausas." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Prieš pridėdami prieigos raktą, patvirtinkite savo el. paštą." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Prieš pridėdami autentifikavimo programėlę, patvirtinkite savo el. paštą." @@ -37571,7 +37583,7 @@ msgstr "Peržiūrėkite ir tvarkykite užblokuotus narius." msgid "View and manage every webhook configured across your community." msgstr "Peržiūrėkite ir tvarkykite visus savo bendruomenėje sukonfigūruotus webhookus." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Peržiūrėkite ir tvarkykite atsarginius paskyros atkūrimo kodus" @@ -37605,7 +37617,7 @@ msgstr "Peržiūrėti kanalą" msgid "View channel members" msgstr "Peržiūrėti kanalo narius" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Peržiūrėti kodus" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Peržiūrėti planus" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Peržiūrėti profilį" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "balso kanalas" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Balso kanalas" @@ -38073,7 +38085,7 @@ msgstr "Anuliuota" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Palaukite čia" msgid "Waiting for connection..." msgstr "Laukiama prisijungimo..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Laukiama prieigos rakto…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Žiūrėti" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Žiūrėti transliaciją" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Svetainių peržiūros" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Sveiki sugrįžę" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Šiuo metu nesate jokioje bendruomenėje." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Užblokavote {userName}. Negalėsite siųsti žinučių, kol jų neatblokuosite." @@ -39101,6 +39113,11 @@ msgstr "Galite atšaukti paskyros ištrynimą per 14 dienų" msgid "You can close this modal. The import will continue in the background." msgstr "Galite uždaryti šį langą. Importavimas tęsis fone." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Galite uždaryti šį skirtuką" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Dabar galite uždaryti šį skirtuką ir grįžti į programėlę." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Negalite siųsti draugystės užklausos sau." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Negalite siųsti žinučių šiame kanale." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Vis tiek turėsite užbaigti el. pašto patvirtinimą." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Po slaptažodžio nebebūsite prašomi pateikti prieigos rakto. Antruoju veiksniu liks jūsų autentifikavimo programėlė." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Visuose atjungtuose įrenginiuose turėsite prisijungti iš naujo" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Kad prisijungtumėte naujame įrenginyje, jums reikės vieno iš prieigos raktų. Jei prarasite visus prieigos raktus, galite visam laikui netekti prieigos prie paskyros. Jums bus išsaugoti atsarginiai kodai, kad vis tiek galėtumėte prisijungti." @@ -39918,12 +39935,12 @@ msgstr "Jūsų paskyra per nauja, kad galėtų siųsti žinutes šioje bendruome msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Jūsų paskyros užklausa laukia patvirtinimo. Prisijungti galėsite, kai administratorius ją patvirtins." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Jūsų paskyrai reikalingas daugiafaktorinis autentifikavimas, tačiau šiame įrenginyje nėra nustatytų palaikomų metodų. Prisijunkite įrenginyje, kuriame yra jūsų autentifikavimo programa arba saugos raktas, arba susisiekite su palaikymo komanda." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Jūsų paskyra nebebus apsaugota dviejų veiksnių autentifikavimu, kai prisijungsite naudodami slaptažodį. Taip pat prarasite aukštesnio lygio leidimus bendruomenėse, kuriose reikalaujama dviejų veiksnių autentifikavimo." @@ -39941,16 +39958,6 @@ msgstr "Jūsų veiksmas negalėjo būti atliktas, nes jį pažymėjo mūsų saug msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Jūsų paraiška laukia peržiūros. Vis dar galite atnaujinti savo įrašo informaciją arba atšaukti paraišką." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Jūsų naršyklė užblokavo iššokantįjį prieigos rakto langą. Leiskite iššokančiuosius langus šioje svetainėje ir bandykite dar kartą." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Jūsų naršyklė šiame domene nepalaiko prieigos raktų. Atnaujinkite naršyklę arba prisijunkite naudodami slaptažodį ir dviejų veiksnių kodą." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Jūsų bendruomenėje turi būti bent {minMemberCount, plural, one {# na msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Jūsų kredito kortelė patikrinta. Jei kortelė galioja, netrukus bus atrakintas suaugusiesiems skirtas turinys. Galite uždaryti šį skirtuką ir grįžti į programėlę." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Jūsų įrenginys paprašys išsaugoti atnaujintą prieigos raktą „{name}“. Jis pakeis senąjį." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Jūsų įrenginys paprašys išsaugoti atnaujintą prieigos raktą „{name}“. Naudokite tą patį telefoną ar saugos raktą, kurį ką tik naudojote." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Padidinti" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Didinti" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/nl/messages.po b/fluxer_app/src/features/i18n/locales/nl/messages.po index fca9d1230..c3db1d573 100644 --- a/fluxer_app/src/features/i18n/locales/nl/messages.po +++ b/fluxer_app/src/features/i18n/locales/nl/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {lid} other {leden}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# vermelding} other {# vermeldingen}}" @@ -2370,8 +2370,8 @@ msgstr "6 maanden" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-cijferige code" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Geforceerde account- en premiuminstellingen" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Accounttoegang" @@ -2807,7 +2807,7 @@ msgstr "Actieve abonnee met een maandabonnement (opgezegd)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Voeg een account toe om verder te gaan." msgid "Add an email and password to your account first." msgstr "Voeg eerst een e-mailadres en wachtwoord toe aan je account." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Voeg een extra beveiligingslaag toe aan je account" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Bot toevoegen aan een bestemming" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Kanaal toevoegen" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Nieuwe reacties toevoegen aan berichten." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Notitie toevoegen" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Aangepaste toegangsrechten toevoegen" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Passkey toevoegen" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Reactie toevoegen" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Toevoegen aan woordenboek" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Toevoegen aan favorieten" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Toegevoegd aan favoriete GIF's" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Toegevoegd aan favorieten" @@ -3296,11 +3296,11 @@ msgstr "Toegevoegd aan favorieten" msgid "Added to saved media" msgstr "Toegevoegd aan opgeslagen media" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Toegevoegd: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Toegevoegd: {createdDate} • voor het laatst gebruikt: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Alle talen" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Alle berichten" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Al verwijderd" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Heb je al een account?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Appzoom" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Zoomniveau van app" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Goedkeuren" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Keur deze app goed vanuit de {productName}-app die je al gebruikt. Geen wachtwoord nodig." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Weet je zeker dat je de categorie \"{categoryName}\" wilt verwijderen? Dit kan niet ongedaan worden gemaakt." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Weet je zeker dat je de passkey <0>{0} wilt verwijderen?" @@ -4493,7 +4493,7 @@ msgstr "Weet je zeker dat je deze bijlage wilt verwijderen? Deze actie kan niet msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Weet je zeker dat je deze community wilt verwijderen? Deze actie kan niet ongedaan worden gemaakt. Alle kanalen, berichten en instellingen worden permanent verwijderd." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Weet je zeker dat je deze passkey wilt verwijderen?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Vragen voordat je iemand belt" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Vraag om een passkey na je wachtwoord bij het inloggen" @@ -4690,7 +4690,7 @@ msgstr "Bijlagen" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Audio" @@ -4851,14 +4851,14 @@ msgstr "Authenticatie" msgid "Authenticator" msgstr "Authenticator" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Authenticator-app" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Code uit authenticator-app" @@ -4928,7 +4928,7 @@ msgstr "Geautoriseerde apps" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Nu afwezig" msgid "Back" msgstr "Terug" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Terug naar {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Terug naar rollen" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Terug naar instellingen" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Terug naar inloggen" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Back-upcode" @@ -5351,7 +5356,7 @@ msgstr "Back-upcode" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Limiet voor opgeslagen berichten bereikt" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Gesprekken" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Camera uit" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Camera aan" @@ -6364,9 +6369,9 @@ msgstr "Kan hier geen bestanden uploaden" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Kan hier geen bestanden uploaden" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Emoji wijzigen" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Bijnaam van vriend wijzigen" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Mijn groepsbijnaam wijzigen" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Bijnaam wijzigen" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Kanaalacties" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanaal toegevoegd aan favorieten" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanaal aangemaakt" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Kanaal debuggen" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanaal verwijderd" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Kanaalrecord" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanaal verwijderd uit favorieten" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Kies de accentkleur van je profiel" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Registratie voltooien" @@ -7715,7 +7720,7 @@ msgstr "Voltooi de registratie van je account en verifieer je e-mailadres om mel msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Voltooi de registratie van je account door een e-mailadres en wachtwoord toe te voegen. We sturen een verificatiecode om je e-mailadres te bevestigen voordat de registratie wordt afgerond." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Voltooi de registratie van je account om toegang te krijgen tot beveiligingsfuncties zoals tweestapsverificatie en passkeys." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Snelle CSS wissen?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Zoekopdracht wissen" @@ -8103,7 +8108,7 @@ msgstr "Klonen is uitgeschakeld" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Sluiten" @@ -8160,11 +8165,9 @@ msgstr "Sluiten naar menubalk" msgid "Close to tray" msgstr "Sluiten naar systeemvak" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Venster sluiten" @@ -8456,7 +8459,7 @@ msgstr "Communicatie" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Community debuggen" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Standaard voor community" @@ -8577,7 +8580,7 @@ msgstr "Communitylidrecord" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Communityleden" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Meldingsniveau community" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Meldingsinstellingen community" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Vergelijking" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Controle voor inhoud voor volwassenen voltooien" @@ -9093,7 +9096,7 @@ msgstr "Verbinding: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Contextmenu's kunnen worden geopend met een linkermuisklik (op knoppen) #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Doorgaan" msgid "Continue to checkout" msgstr "Verder naar afrekenen" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Ga verder om een passkey te maken voor {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Doorgaan met community melden" msgid "Continue to report user" msgstr "Doorgaan met gebruiker melden" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Doorgaan met passkey" @@ -9238,11 +9238,6 @@ msgstr "Doorgaan met passkey" msgid "Continue with SSO" msgstr "Doorgaan met SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Ga verder met je passkey om in te loggen bij {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Coördineert raids, georganiseerde verstoringsacties of intimidatie tege #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Gekopieerd" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Categorie-ID kopiëren" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kanaal-ID kopiëren" @@ -9421,12 +9416,12 @@ msgstr "Kanaallink kopiëren" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Code kopiëren" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Community-ID kopiëren" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Uitnodigings-URL kopiëren" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Bericht kopiëren" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Bericht-ID kopiëren" @@ -9570,7 +9565,7 @@ msgstr "Bericht-ID kopiëren" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Sticker-URL kopiëren" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Kopieer de configuratiesleutel naar je authenticator-app." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Gebruikers-ID kopiëren" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Gebruikersnaam kopiëren" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Applicatie kon niet worden verwijderd" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Passkey kon niet worden verwijderd" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Uitnodiging kon niet worden verzonden" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Kon uitnodiging niet versturen. Probeer opnieuw." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "De instelling om onderdrukking van vermeldingen te omzeilen kon niet worden bijgewerkt" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Tweefactorauthenticatie met passkey kon niet worden bijgewerkt" @@ -10206,6 +10201,11 @@ msgstr "De alternatieve tekst kon niet worden bijgewerkt. Probeer het opnieuw." msgid "Couldn't update voice activity sharing right now" msgstr "Het delen van spraakchatactiviteit kon nu niet worden bijgewerkt" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Kon je passkey niet bijwerken. Probeer het opnieuw." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Avatar kon niet worden geüpload" msgid "Couldn't upload banner" msgstr "Banner kon niet worden geüpload" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Kon je passkey niet gebruiken in het pop-upvenster. Probeer het opnieuw." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Code kon niet worden geverifieerd. Probeer het opnieuw." msgid "Couldn't verify the connection" msgstr "Verbinding kon niet worden geverifieerd" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Verificatie met passkey mislukt. Probeer het opnieuw." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Ruim" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Maken" @@ -10298,7 +10293,7 @@ msgstr "Nieuwe groep maken met {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Applicatie aanmaken" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Categorie aanmaken" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Kanaal aanmaken" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Community aanmaken" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Aangepaste waarschuwingstekst" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Aangepast…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Foutopsporing" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Kanaal debuggen" @@ -11164,7 +11159,7 @@ msgstr "Bericht debuggen" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Gebruiker debuggen" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "{fileName} verwijderen" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Account verwijderen" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "App verwijderen" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Bijlage verwijderen" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Media verwijderen" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Bericht verwijderen" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Berichten van andere leden verwijderen. Vastzetten wordt afzonderlijk beheerd." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Passkey verwijderen" @@ -11701,7 +11696,7 @@ msgstr "Beschrijf waar je community over gaat" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Beschrijving" @@ -11966,7 +11961,7 @@ msgstr "Apparaat:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Directe invoer" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Direct bericht" @@ -12050,7 +12045,7 @@ msgstr "Voorvertoningen van directe berichten" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Directe berichten" @@ -12077,14 +12072,14 @@ msgstr "Directe upload actief" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Uitschakelen" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Account uitschakelen" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Verbinding verbroken" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Vindbare community" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Discriminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Sluiten" @@ -12477,7 +12472,7 @@ msgstr "Instellingen voor DM's en vriendschapsverzoeken" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM gesloten" @@ -12607,7 +12602,7 @@ msgstr "Blokkeert niet. Je kunt later opnieuw openen." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domein" @@ -12697,7 +12692,7 @@ msgstr "Dubbelklik op iemand om hun stream te bekijken." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Nederlands" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "bijv. YubiKey, iPhone, werkcomputer" @@ -13092,7 +13087,7 @@ msgstr "Bewerk algemene instellingen zoals naam, beschrijving en pictogram." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Groep bewerken" @@ -13123,7 +13118,7 @@ msgstr "Media bewerken" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Bericht bewerken" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Komt in aanmerking voor een terugbetaling tot {windowEndsOn}. Hiermee wordt je abonnement ook direct beëindigd." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-mail" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji bijgewerkt" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emoji's" @@ -13525,7 +13520,7 @@ msgstr "Favorieten leeg" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Inschakelen" @@ -13680,7 +13675,7 @@ msgstr "Mobiele pushmeldingen inschakelen" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Meldingen inschakelen" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Schakel de integraties in waarvan je de toegangsgegevens hebt geconfigureerd. Alleen beschikbare diensten worden weergegeven." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Tweestapsverificatie inschakelen" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Engels (VS)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Verbeterd" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Nieuw e-mailadres invoeren" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Voer een van je back-upcodes in als je je passkey niet kunt gebruiken." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Voer een van je back-upcodes in." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Tekst invoeren" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Voer de code van {digitCount} cijfers uit je authenticator-app of een back-upcode in." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Voer de code in voordat je verdergaat." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Voer de code van je authenticator-app in." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Voer je naam in" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Voer je wachtwoord in." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Verlopen op <0>{expiredDate}. <1/> zijn niet langer actief. Je kunt je op elk moment opnieuw abonneren." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Verloopt" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Suggesties voor expressies" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Categorieën voor expressiekiezer" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Emoji's voorbereiden mislukt" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Verwerken van de bijgesneden afbeelding is mislukt. Probeer het opnieuw." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Kan SSO niet starten" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Niet gelukt om van account te wisselen" @@ -15053,7 +15048,7 @@ msgstr "Favorieten" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favorieten" @@ -15268,6 +15263,11 @@ msgstr "Accountregistratie voltooien" msgid "Finish account setup first" msgstr "Voltooi eerst de registratie van je account" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Voltooi in het nieuwe tabblad. Als je het hebt gesloten, druk dan nogmaals op 'Doorgaan met passkey'." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Mapnaam" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Mapinstellingen" @@ -15479,7 +15479,7 @@ msgstr "Voor mij" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Voor deze controle stuur je ons een sms in plaats van er een van ons te ontvangen." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Bevestig voor je veiligheid dat jij het bent om verder te gaan." @@ -15606,7 +15606,7 @@ msgstr "Wachtwoord vergeten" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Wachtwoord vergeten?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Alleen vrienden en kleine communities" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Vrienden van vrienden" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "AVG" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Algemeen" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Duitsland" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Neem {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF-URL's" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF's" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Systeembrede sneltoets" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Terug" @@ -16374,6 +16374,11 @@ msgstr "Terug" msgid "Go back and enter a valid email." msgstr "Ga terug en voer een geldig e-mailadres in." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Ga terug naar {productName} om verder te gaan." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Voetnoten over vervaldatums verbergen" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Favorieten verbergen" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Gedempte kanalen verbergen" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Gedempte kanalen verbergen" @@ -17358,7 +17363,7 @@ msgstr "Identiteit" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inactief" @@ -17818,7 +17823,7 @@ msgstr "Ongepast profiel" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Inbox" @@ -17867,7 +17872,7 @@ msgstr "Voer de community-ID in." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Voorbeeld van uitnodigingspagina" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Mensen uitnodigen" @@ -18456,7 +18461,7 @@ msgstr "Uitnodiger:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Uitnodigingen" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Deelnemen aan gesprek" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Word lid van community" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Lid geworden van {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Ga naar" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Verwijder een lid uit deze community." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Lid uit community verwijderen" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Gesprek verlaten" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Community verlaten" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Linkbouwer" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Link gekopieerd naar klembord" @@ -19859,8 +19864,8 @@ msgstr "Malware of gevaarlijke links" msgid "Malware, credential theft, or harmful files." msgstr "Malware, diefstal van inloggegevens of schadelijke bestanden." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Beheren" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Accounts beheren" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Beheer de apps en apparaten die toegang hebben tot je account." @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Markeer alle ongelezen inboxkanalen direct als gelezen, zonder om bevestiging te vragen" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Markeren als gelezen" @@ -20021,7 +20026,7 @@ msgstr "Markeren als spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Markeren als ongelezen" @@ -20169,7 +20174,7 @@ msgstr "Community voor volwassenen" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Inhoud voor volwassenen" @@ -20315,7 +20320,7 @@ msgstr "Meten…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "leden" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Leden" @@ -20616,7 +20621,7 @@ msgstr "Deze rol vermelden?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Vermeldingen" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Meer media-acties" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Meer opties" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Oproepen dempen" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Categorie dempen" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Communities dempen" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Community dempen" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Binnenkomstgeluid dempen" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Favorieten dempen" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Naam moet minimaal 2 tekens lang zijn" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Passkey een naam geven" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formulier om een passkey een naam te geven" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Account nodig?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Nooit" @@ -22276,7 +22281,7 @@ msgstr "Nieuwste eerst" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Volgende" @@ -22905,7 +22910,7 @@ msgstr "Geen gebruikers gevonden" msgid "No verification is required." msgstr "Geen verificatie vereist." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Geen verificatiemethoden beschikbaar" @@ -23038,11 +23043,13 @@ msgstr "Niet gevonden" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Niet nu" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Notitie (alleen voor jou zichtbaar)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Niets" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Afwijkende meldingsinstellingen" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Meldingsinstellingen" @@ -23152,7 +23159,7 @@ msgstr "Meldingsvolume" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Uit" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Oké" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Alleen leden met de machtiging \"{manageCommunityPermissionLabel}\" kunnen dit wijzigen." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Alleen @vermeldingen" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Open {labelText} in instellingen" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Open {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Geopende directe berichten" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "DM openen" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Factuur {invoiceLabel} openen" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Link openen" @@ -23850,7 +23857,7 @@ msgstr "Snelle wisselaar openen" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Instellingen openen" @@ -23935,11 +23942,6 @@ msgstr "Themastudio in apart venster openen" msgid "Open theme studio…" msgstr "Themastudio openen…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Open dit venster vanuit {productName} om je passkey te gebruiken." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Opties" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Passkey" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Naam van passkey" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Passkey bijgewerkt" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Passkeys" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Passkeys vereisen een ondertekende macOS-bundel met een geldige app-ID. Installeer de ondertekende computerapp en probeer het opnieuw." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Wachtwoord" msgid "Password changed" msgstr "Wachtwoord gewijzigd" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Wachtwoordbeheerders bieden je passkey mogelijk niet aan op dit webadres. Probeer het in plaats daarvan in een pop-upvenster op het oude adres." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Plak de berichtlink." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Persoonlijk woordenboek" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Persoonlijke notities" @@ -24885,7 +24887,7 @@ msgstr "Groeps-DM vastzetten" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Bericht vastzetten" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "vastgezet" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Vastgezet DM-gesprek" @@ -25020,7 +25022,7 @@ msgstr "Platformbeheerder" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Afspelen" @@ -25318,6 +25320,11 @@ msgstr "Druk op een toets, muisknop of gamepadknop om toe te wijzen. Esc annulee msgid "Press a shortcut…" msgstr "Druk op een sneltoets…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Druk op 'Doorgaan' om je passkey te gebruiken." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Hoofdtaal" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Hoofdnavigatie" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Privacybeleid" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Privacyinstellingen" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Pro-tip:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Doorgaan" @@ -26090,7 +26097,7 @@ msgstr "Reageren met {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Als je dit opnieuw genereert, wordt de huidige token ongeldig. Werk alle code bij die de oude waarde gebruikt." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registreren" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Geregistreerde passkeys" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Banner verwijderen" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Verwijderen uit opgeslagen berichten" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Verwijderen uit woordenboek" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Verwijderen uit favorieten" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Verwijderd uit favoriete GIF's" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Verwijderd uit favorieten" @@ -27032,7 +27039,7 @@ msgstr "Minder machtigingen geven kan de functies van de bot beperken." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Als je de time-out opheft, kan <0>{targetUserTag} weer berichten versturen, reageren en deelnemen aan spraakkanalen." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Naam wijzigen" @@ -27119,7 +27126,7 @@ msgstr "Antwoorden" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Antwoorden" @@ -27209,7 +27216,7 @@ msgstr "Probleem melden" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Bericht melden" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "2FA vereisen voor moderatieacties" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Een passkey als je tweede factor vereisen" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Resetlink ongeldig of verlopen" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Status van akkoord voor inhoud voor volwassenen resetten" @@ -27880,7 +27887,7 @@ msgstr "Omgekeerd zoeken op afbeeldingen" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Omgekeerd zoeken op afbeeldingen" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Controleren en bevestigen" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Bekijk apps die toegang hebben tot je account." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Bekijk eerdere aankopen en terugbetalingsopties" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Bekijk ingelogde apparaten en meld sessies af die je niet herkent." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rol bijgewerkt" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Rollen" @@ -28261,7 +28268,7 @@ msgstr "Verzadiging" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Bereik" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Machtigingsbereiken" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Schermlezer" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Zoek naar kanalen, mensen of communities" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Vrienden zoeken" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Geselecteerde tekst zoeken" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Instellingen zoeken" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Instellingen zoeken…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Beveiliging" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Beveiligingsfuncties" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Beveiligingssleutel" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Beveiligingssleutel / passkey" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Gevoelige media" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Verzonden" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Sessie" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Sessie verlopen voor {identifier}. Log opnieuw in." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Stelt het volume in voor elk geluidseffect. Individuele geluidsinstellingen negeren dit." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Instellingen geopend." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Instellingensecties" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Zijbalk" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Inloggen" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Log in om je cadeau in te wisselen" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Inloggen via browser" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Inloggen met een passkey" @@ -30666,7 +30673,7 @@ msgstr "Log in via de aanbieder van eenmalige aanmelding van je organisatie." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Uitloggen" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Aanmeldingsgegevens" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Aanmeldingsproces" @@ -31189,7 +31196,7 @@ msgstr "Sommige gebruikers kunnen niet worden toegevoegd" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Er is iets misgegaan" @@ -31374,7 +31381,7 @@ msgstr "Geluidsvolume" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Geluiden" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Begin direct na het toevoegen van bijlagen aan het invoerveld met het uploaden ervan" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Start videogesprek" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Start spraakoproep" @@ -31899,7 +31906,7 @@ msgstr "sticker" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Sticker: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Stickers" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Alle links niet meer vertrouwen?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Stoppen met passkeys voor tweefactorauthenticatie?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Alle rolvermeldingen onderdrukken" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Ingesloten inhoud verbergen" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "tekstkanaal" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Tekstkanaal" @@ -33055,7 +33062,7 @@ msgstr "Sms ons vanaf je telefoon" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Tekst naar spraak" @@ -33119,6 +33126,11 @@ msgstr "Dat is niet voltooid. Mogelijk heb je sommige communities al verlaten en msgid "That did not go through. Nothing changed. Try again." msgstr "Dat is niet gelukt. Er is niets veranderd. Probeer het opnieuw." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Dat werkte niet. Probeer het opnieuw of annuleer." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Dat lijkt geen geldige kleur. Probeer hex, rgb(), hsl() of een CSS-kleurnaam." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Die afbeelding kon niet worden gebruikt. Probeer een ander bestand." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Deze afbeelding is ongeldig. Probeer een andere." @@ -34035,11 +34047,11 @@ msgstr "Dit is de beschrijving van de tweede optie" msgid "This is the third option description" msgstr "Dit is de beschrijving van de derde optie" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Dit is je laatste passkey en passkeys zijn je tweede factor. Als je deze verwijdert, wordt tweefactorauthenticatie voor je account uitgeschakeld en werken je huidige back-upcodes niet meer." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Dit is je laatste passkey. Als deze weg is, kun je geen passkey meer gebruiken als je tweede factor." @@ -34154,16 +34166,6 @@ msgstr "Deze deelnemer heeft het geluid uitgeschakeld" msgid "This participant was deafened by moderators" msgstr "Moderators hebben het geluid voor deze deelnemer uitgeschakeld" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Dit passkey-verzoek kon niet worden geverifieerd. Sluit dit venster en probeer het opnieuw." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Dit passkey-verzoek is verlopen. Sluit dit venster en probeer het opnieuw." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Hiermee worden alle vertrouwde domeinen verwijderd. Je ziet dan opnieuw msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Hiermee worden alle aangepaste sneltoetsen verwijderd en alle ingebouwde sneltoetsen opnieuw ingeschakeld. Dit kan niet ongedaan worden gemaakt." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Deze aanvraag is verlopen. Ga terug en probeer het opnieuw." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Deze resetlink is verlopen. Resetlinks zijn 1 uur geldig. Vraag een nieuwe aan." @@ -34807,7 +34814,7 @@ msgstr "Groepseigendom overdragen aan {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Eigendom overdragen" @@ -34823,7 +34830,7 @@ msgstr "Eigendom overgedragen aan {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Vertalen" @@ -34980,7 +34987,7 @@ msgstr "Probeer een andere variabelenaam of wis de zoekopdracht." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Opnieuw proberen" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Opnieuw proberen" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Probeer het over een ogenblik opnieuw." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Probeer te zoeken naar iets als \"thema\", \"meldingen\" of \"privacy\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Beveiligingssleutel/passkey gebruiken" @@ -35088,7 +35095,7 @@ msgstr "Turks" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Uitschakelen" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Schakel het delen van audio voor deze bron uit of probeer het zo meteen opnieuw." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Camera uitzetten" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Schakel streamingprivacy uit voordat je inlog- of accountbeveiligingsgegevens bekijkt." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Inschakelen" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Tweefactorauthenticatie" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Tweefactorauthenticatie" @@ -35288,7 +35295,7 @@ msgstr "Tweefactorauthenticatie uitgeschakeld" msgid "Two-factor authentication enabled" msgstr "Tweefactorauthenticatie ingeschakeld" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Tweefactorauthenticatie is ingeschakeld" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Deblokkeer gebruiker" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Ongecategoriseerd" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Onderstreep websitekoppelingen" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Oké" @@ -35643,7 +35650,7 @@ msgstr "Universeel alternatief. Laagste kwaliteit, maar werkt overal." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Dempen op alle apparaten opheffen" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Dempen van categorie opheffen" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Dempen van communities opheffen" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Dempen van community opheffen" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Dempen van DM's opheffen" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Dempen van favorieten opheffen" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Losmaken" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Bericht losmaken" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Dit bericht losmaken?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "DM losgemaakt" @@ -36193,6 +36200,11 @@ msgstr "E-mailadres bijwerken" msgid "Update my status" msgstr "Mijn status bijwerken" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Passkey bijwerken" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Time-out aanpassen" msgid "Update your own nickname." msgstr "Je eigen bijnaam bijwerken." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Werk je passkey bij" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Gebruik een apart venster om een drempeldatum voor de berichtgeschiedeni msgid "Use a different email address and verify it with a code." msgstr "Gebruik een ander e-mailadres en verifieer dit met een code." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Passkey uit wachtwoordbeheerder gebruiken" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Werkelijke waarde gebruiken" msgid "Use alternative method" msgstr "Andere methode gebruiken" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Gebruik een authenticator-app om codes te genereren voor tweefactorauthenticatie" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Alleen gebruiken als het duidelijk de regels van {productName} schendt en niet hierboven past." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Passkeys gebruiken voor tweefactorauthenticatie?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Gebruik passkeys om zonder wachtwoord in te loggen" @@ -36824,8 +36836,8 @@ msgstr "Spraakactiviteit gebruiken" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Gebruik de spellingscontrole van je besturingssysteem indien beschikbaar. Anders gebruik je de ingebouwde woordenboeken van {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Gebruik je passkey" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Gebruikersinstellingen" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Gebruiker debuggen" @@ -36972,7 +36984,7 @@ msgstr "Volume van gebruiker" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verificatie geannuleerd" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Verificatiecode" @@ -37185,7 +37197,7 @@ msgstr "Verificatie-e-mail verzonden. Controleer je inbox." msgid "Verification expired" msgstr "Verificatie verlopen" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Geverifieerde community" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verifiëren" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Verbinding verifiëren" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "E-mailadres verifiëren" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formulier voor identiteitsverificatie" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Verifieer dat jij het bent" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Verifieer je e-mailadres om vriendschapsverzoeken te versturen." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Verifieer je e-mailadres voordat je een passkey toevoegt." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Verifieer je e-mailadres voordat je een authenticator-app toevoegt." @@ -37571,7 +37583,7 @@ msgstr "Verbannen gebruikers bekijken en beheren." msgid "View and manage every webhook configured across your community." msgstr "Bekijk en beheer elke webhook die is ingesteld voor je community." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Bekijk en beheer je back-upcodes voor accountherstel" @@ -37605,7 +37617,7 @@ msgstr "Kanaal bekijken" msgid "View channel members" msgstr "Kanaalleden bekijken" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Codes bekijken" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Bekijk abonnementen" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Profiel bekijken" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "spraakkanaal" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Spraakkanaal" @@ -38073,7 +38085,7 @@ msgstr "Ongeldig" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Even wachten" msgid "Waiting for connection..." msgstr "Wachten op verbinding..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Wachten op passkey…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Kijken" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Stream bekijken" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Websitevoorbeelden" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Welkom terug" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Je zit momenteel in geen enkele community." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Je hebt {userName} geblokkeerd. Je kunt deze gebruiker pas weer berichten sturen als je de blokkering opheft." @@ -39101,6 +39113,11 @@ msgstr "Je kunt het verwijderingsproces binnen 14 dagen annuleren" msgid "You can close this modal. The import will continue in the background." msgstr "Je kunt dit venster sluiten. Het importeren gaat op de achtergrond verder." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Je kunt dit tabblad sluiten" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Je kunt dit tabblad nu sluiten en teruggaan naar de app." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Je kunt jezelf geen vriendschapsverzoek sturen." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Je kunt geen berichten verzenden in dit kanaal." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Je moet de e-mailstap nog steeds afronden." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Er wordt na je wachtwoord niet meer om een passkey gevraagd. Je authenticator-app blijft je tweede factor." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Je moet opnieuw inloggen op alle afgemelde apparaten" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Je hebt een van je passkeys nodig om op een nieuw apparaat in te loggen. Als je al je passkeys kwijtraakt, kun je permanent de toegang tot je account verliezen. Er worden back-upcodes voor je opgeslagen, zodat je nog een manier hebt om binnen te komen." @@ -39918,12 +39935,12 @@ msgstr "Je account is te nieuw om berichten te versturen in deze community." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Je accountaanvraag wacht op goedkeuring. Je kunt inloggen nadat een beheerder deze heeft goedgekeurd." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Je account vereist meervoudige authenticatie, maar er zijn geen ondersteunde methoden ingesteld op dit apparaat. Meld je aan op een apparaat met je authenticator-app of beveiligingssleutel, of neem contact op met de ondersteuning." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Je account wordt niet langer beschermd door tweefactorauthenticatie wanneer je met je wachtwoord inlogt. Je verliest ook verhoogde machtigingen in communities die tweefactorauthenticatie vereisen." @@ -39941,16 +39958,6 @@ msgstr "Je actie kon niet worden voltooid omdat deze is gemarkeerd door onze vei msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Je aanvraag wacht op beoordeling. Je kunt de gegevens van je vermelding nog bijwerken of de aanvraag intrekken." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Je browser heeft het pop-upvenster voor de passkey geblokkeerd. Sta pop-ups toe voor deze site en probeer het opnieuw." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Je browser ondersteunt geen passkeys op dit domein. Werk je browser bij of log in met je wachtwoord en tweefactorcode." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Je community heeft minimaal {minMemberCount, plural, one {# lid} other { msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Je creditcard is gecontroleerd. Als de kaart geldig is, wordt inhoud voor volwassenen binnenkort ontgrendeld. Je kunt dit tabblad sluiten en teruggaan naar de app." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Je apparaat vraagt je om een bijgewerkte passkey voor {name} op te slaan. Deze vervangt de oude." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Je apparaat vraagt je om een bijgewerkte passkey voor {name} op te slaan. Gebruik dezelfde telefoon of beveiligingssleutel die je net hebt gebruikt." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoomen" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Inzoomen" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/no/messages.po b/fluxer_app/src/features/i18n/locales/no/messages.po index 407750d0c..f6efdd05d 100644 --- a/fluxer_app/src/features/i18n/locales/no/messages.po +++ b/fluxer_app/src/features/i18n/locales/no/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {medlem} other {medlemmer}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# omtale} other {# omtaler}}" @@ -2370,8 +2370,8 @@ msgstr "6 måneder" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-sifret kode" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Overstyringer for konto og premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Kontotilgang" @@ -2807,7 +2807,7 @@ msgstr "Aktiv månedlig abonnent (abonnementet avsluttes ved periodens slutt)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Legg til en konto for å fortsette." msgid "Add an email and password to your account first." msgstr "Legg til en e-postadresse og et passord på kontoen din først." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Legg til et ekstra sikkerhetslag på kontoen din" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Legg til bot i en destinasjon" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Legg til kanal" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Legg til nye reaksjoner på meldinger." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Legg til notat" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Legg til egendefinert tilgangstillatelse" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Legg til passnøkkel" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Legg til reaksjon" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Legg til i ordbok" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Legg til i favoritter" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Lagt til i favoritt-GIF-er" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Lagt til i favoritter" @@ -3296,11 +3296,11 @@ msgstr "Lagt til i favoritter" msgid "Added to saved media" msgstr "Lagt til i lagrede medier" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Lagt til: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Lagt til: {createdDate} • sist brukt: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Alle språk" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Alle meldinger" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Allerede slettet" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Har du allerede en konto?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Appzoom" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Appens zoomnivå" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Godkjenn" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Godkjenn denne appen fra {productName}-appen du allerede bruker. Ingen passord trengs." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Er du sikker på at du vil slette kategorien «{categoryName}»? Dette kan ikke angres." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Er du sikker på at du vil slette passnøkkelen <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Er du sikker på at du vil slette dette vedlegget? Denne handlingen kan msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Er du sikker på at du vil slette dette fellesskapet? Denne handlingen kan ikke angres. Alle kanaler, meldinger og innstillinger blir slettet permanent." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Er du sikker på at du vil slette denne passnøkkelen?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Spør før du starter samtaler" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Be om en passnøkkel etter passordet ditt når du logger på" @@ -4690,7 +4690,7 @@ msgstr "Vedlegg" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Lyd" @@ -4851,14 +4851,14 @@ msgstr "Autentisering" msgid "Authenticator" msgstr "Autentiseringsapp" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Autentiseringsapp" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Kode fra autentiseringsappen" @@ -4928,7 +4928,7 @@ msgstr "Autoriserte apper" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Borte akkurat nå" msgid "Back" msgstr "Tilbake" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Tilbake til {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Tilbake til roller" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Tilbake til innstillinger" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Tilbake til pålogging" @@ -5342,8 +5347,8 @@ msgstr "Tilbaketast" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Reservekode" @@ -5351,7 +5356,7 @@ msgstr "Reservekode" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Grensen for lagrede meldinger er nådd" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Anrop" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera av" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera på" @@ -6364,9 +6369,9 @@ msgstr "Kan ikke laste opp filer her" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Kan ikke laste opp filer her" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Endre emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Endre vennens kallenavn" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Endre kallenavnet mitt i gruppen" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Endre kallenavn" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Kanalhandlinger" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanal lagt til i favoritter" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanal opprettet" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Feilsøking av kanal" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanalen er slettet" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Kanaloppføring" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanal fjernet fra favoritter" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Velg aksentfargen for profilen din" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Fullfør registreringen av kontoen din" @@ -7715,7 +7720,7 @@ msgstr "Fullfør registreringen av kontoen din og bekreft e-postadressen din for msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Fullfør registreringen av kontoen din ved å legge til en e-postadresse og et passord. Vi sender en bekreftelseskode for å bekrefte e-postadressen før registreringen fullføres." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Fullfør registreringen av kontoen din for å få tilgang til sikkerhetsfunksjoner som tofaktorautentisering og passnøkler." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Fjerne hurtig-CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Tøm søk" @@ -8103,7 +8108,7 @@ msgstr "Kloning er slått av" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Lukk" @@ -8160,11 +8165,9 @@ msgstr "Lukk til menylinjen" msgid "Close to tray" msgstr "Lukk til systemstatusfelt" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Lukk vinduet" @@ -8456,7 +8459,7 @@ msgstr "Kommunikasjon" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Feilsøking for fellesskap" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Standard for fellesskap" @@ -8577,7 +8580,7 @@ msgstr "Oppføring for fellesskapsmedlem" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Fellesskapsmedlemmer" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Varslingsnivå for fellesskap" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Varslingsinnstillinger for fellesskap" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Sammenligning" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Fullfør kontroll for vokseninnhold" @@ -9093,7 +9096,7 @@ msgstr "Tilkobling: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Du kan åpne kontekstmenyer med venstreklikk (på knapper) eller høyrek #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Fortsett" msgid "Continue to checkout" msgstr "Fortsett til kassen" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Fortsett for å opprette en passnøkkel for {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Fortsett for å rapportere fellesskapet" msgid "Continue to report user" msgstr "Fortsett for å rapportere brukeren" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Fortsett med passnøkkel" @@ -9238,11 +9238,6 @@ msgstr "Fortsett med passnøkkel" msgid "Continue with SSO" msgstr "Fortsett med SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Fortsett med passnøkkelen din for å logge på {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Koordinerer raid, organiserte angrep eller trakassering mot personer ell #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Kopiert" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kopier kategori-ID" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kopier kanal-ID" @@ -9421,12 +9416,12 @@ msgstr "Kopier kanallenke" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Kopier kode" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Kopier fellesskaps-ID" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Kopier invitasjonslenke" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Kopier melding" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Kopier meldings-ID" @@ -9570,7 +9565,7 @@ msgstr "Kopier meldings-ID" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Kopier klistremerke-URL" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Kopier oppsettsnøkkelen inn i autentiseringsappen din." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Kopier bruker-ID" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Kopier brukernavn" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Kunne ikke slette appen" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Kunne ikke slette passnøkkel" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Kunne ikke sende invitasjon" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Kunne ikke sende invitasjon. Prøv igjen." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Kunne ikke oppdatere omgåelse av omtaleundertrykking" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Kunne ikke oppdatere tofaktorautentisering med passnøkkel" @@ -10206,6 +10201,11 @@ msgstr "Kunne ikke oppdatere alt-teksten. Prøv igjen." msgid "Couldn't update voice activity sharing right now" msgstr "Kunne ikke oppdatere deling av taleaktivitet akkurat nå" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Kunne ikke oppdatere passnøkkelen din. Prøv igjen." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Kunne ikke laste opp avatar" msgid "Couldn't upload banner" msgstr "Kunne ikke laste opp banner" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Kunne ikke bruke passnøkkelen din i popup-vinduet. Prøv igjen." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Kunne ikke bekrefte koden. Prøv igjen." msgid "Couldn't verify the connection" msgstr "Kunne ikke bekrefte tilkoblingen" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Kunne ikke bekrefte med passnøkkel. Prøv igjen." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Romslig" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Opprett" @@ -10298,7 +10293,7 @@ msgstr "Opprett en ny gruppe med {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Opprett app" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Opprett kategori" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Opprett kanal" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Opprett fellesskap" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Egendefinert advarselstekst" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Egendefinert …" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Feilsøking" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Feilsøk kanal" @@ -11164,7 +11159,7 @@ msgstr "Feilsøk melding" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Feilsøk bruker" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Slett {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Slett konto" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Slett app" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Slett vedlegg" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Slett medier" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Slett melding" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Slett andre medlemmers meldinger. Festing kontrolleres separat." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Slett passnøkkel" @@ -11701,7 +11696,7 @@ msgstr "Beskriv hva fellesskapet ditt handler om" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Beskrivelse" @@ -11966,7 +11961,7 @@ msgstr "Enhet:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Direkte inndata" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Direktemelding" @@ -12050,7 +12045,7 @@ msgstr "Forhåndsvisninger av direktemeldinger" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Direktemeldinger" @@ -12077,14 +12072,14 @@ msgstr "Direkteopplasting aktiv" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Deaktiver" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Deaktiver konto" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Frakoblet" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Fellesskap i Oppdag" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Diskriminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Lukk" @@ -12477,7 +12472,7 @@ msgstr "Innstillinger for direktemeldinger og venneforespørsler" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Direktemeldingssamtale lukket" @@ -12607,7 +12602,7 @@ msgstr "Blokkerer ikke. Du kan åpne den igjen senere." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domene" @@ -12697,7 +12692,7 @@ msgstr "Dobbeltklikk på noen for å se strømmen deres." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Nederlandsk" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "f.eks. YubiKey, iPhone, jobb-PC" @@ -13092,7 +13087,7 @@ msgstr "Rediger globale innstillinger som navn, beskrivelse og ikon." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Rediger gruppe" @@ -13123,7 +13118,7 @@ msgstr "Rediger medier" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Rediger melding" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Du kan få refusjon frem til {windowEndsOn}. Dette vil også avslutte abonnementet ditt umiddelbart." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-post" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji oppdatert" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojier" @@ -13525,7 +13520,7 @@ msgstr "Tom favorittliste" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Aktiver" @@ -13680,7 +13675,7 @@ msgstr "Slå på push-varsler på mobil" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Slå på varsler" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Aktiver integrasjonene du har konfigurert tilgangsopplysninger for. Bare tilgjengelige tjenester vises." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Aktiver tofaktorautentisering" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Engelsk (USA)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Forbedret" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Skriv inn ny e-postadresse" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Skriv inn en av reservekodene dine hvis du ikke kan bruke passnøkkelen din." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Skriv inn en av reservekodene dine." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Skriv inn tekst" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Skriv inn den {digitCount}-sifrede koden fra autentiseringsappen din eller en reservekode." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Skriv inn koden før du fortsetter." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Skriv inn koden fra autentiseringsappen din." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Skriv inn navnet ditt" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Skriv inn passordet ditt." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Utløp den <0>{expiredDate}. <1/> er ikke lenger aktive. Du kan abonnere på nytt når som helst." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Utløper" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Autofullføring av uttrykk" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Kategorier for uttrykksvelger" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Kunne ikke forberede emojier" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Kunne ikke behandle det beskårne bildet. Prøv igjen." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Kunne ikke starte SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Kunne ikke bytte konto" @@ -15053,7 +15048,7 @@ msgstr "Favoritter" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favoritter" @@ -15268,6 +15263,11 @@ msgstr "Fullfør kontooppsett" msgid "Finish account setup first" msgstr "Fullfør kontooppsettet først" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Fullfør i den nye fanen. Hvis du lukket den, trykker du på «Fortsett med passnøkkel» igjen." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Mappenavn" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Mappeinnstillinger" @@ -15479,7 +15479,7 @@ msgstr "For meg" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "For denne kontrollen sender du oss en tekstmelding i stedet for å motta en fra oss." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Av sikkerhetshensyn må du bekrefte at det er deg, for å fortsette." @@ -15606,7 +15606,7 @@ msgstr "Glemt passord" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Glemt passordet ditt?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Kun venner og små fellesskap" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Venners venner" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Generelt" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Tyskland" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Skaff deg {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF-URL-er" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF-er" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Global snarvei" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Gå tilbake" @@ -16374,6 +16374,11 @@ msgstr "Gå tilbake" msgid "Go back and enter a valid email." msgstr "Gå tilbake og skriv inn en gyldig e-postadresse." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Gå tilbake til {productName} for å fortsette." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Skjul utløpsfotnoter" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Skjul favoritter" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Skjul dempede" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Skjul dempede kanaler" @@ -17358,7 +17363,7 @@ msgstr "Identitet" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inaktiv" @@ -17818,7 +17823,7 @@ msgstr "Upassende profil" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Innboks" @@ -17867,7 +17872,7 @@ msgstr "Inkluder fellesskaps-ID-en." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Forhåndsvisning av invitasjonsside" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Inviter folk" @@ -18456,7 +18461,7 @@ msgstr "Invitert av:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Invitasjoner" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Bli med i samtalen" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Bli med i fellesskapet" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Ble med i {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Gå til" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Fjern et medlem fra dette fellesskapet." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Fjern medlem fra fellesskapet" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Forlat samtale" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Forlat fellesskap" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Lenkebygger" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Lenke kopiert til utklippstavlen" @@ -19859,8 +19864,8 @@ msgstr "Skadelig programvare eller farlige lenker" msgid "Malware, credential theft, or harmful files." msgstr "Skadelig programvare, tyveri av påloggingsinformasjon eller skadelige filer." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Administrer" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Administrer kontoer" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Administrer apper og enheter med tilgang til kontoen din" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Merk alle uleste kanaler i innboksen som lest umiddelbart, uten å be om bekreftelse" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Merk som lest" @@ -20021,7 +20026,7 @@ msgstr "Merk som spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Merk som ulest" @@ -20169,7 +20174,7 @@ msgstr "Fellesskap med voksent innhold" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Voksent innhold" @@ -20315,7 +20320,7 @@ msgstr "Måler …" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "medlemmer" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Medlemmer" @@ -20616,7 +20621,7 @@ msgstr "Omtale denne rollen?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Omtaler" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Flere mediehandlinger" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Flere alternativer" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Demp anrop" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Demp kategori" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Demp fellesskap" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Demp fellesskap" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Demp ankomstlyd" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Demp favoritter" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Navnet må være på minst 2 tegn" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Gi passnøkkelen et navn" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Skjema for å gi passnøkkelen et navn" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Trenger du en konto?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Aldri" @@ -22276,7 +22281,7 @@ msgstr "Nyeste først" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Neste" @@ -22905,7 +22910,7 @@ msgstr "Ingen brukere funnet" msgid "No verification is required." msgstr "Ingen verifisering er nødvendig." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Ingen bekreftelsesmetoder tilgjengelig" @@ -23038,11 +23043,13 @@ msgstr "Ikke funnet" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Ikke nå" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Notat (kun synlig for deg)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Ingenting" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Egendefinerte varselinnstillinger" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Varslingsinnstillinger" @@ -23152,7 +23159,7 @@ msgstr "Varslingsvolum" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Av" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Frakoblet" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "OK" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "pålogget" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Pålogget" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Bare medlemmer med tillatelsen «{manageCommunityPermissionLabel}» kan endre dette." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Bare omtaler" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Åpne {labelText} i innstillinger" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Åpne {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Åpne direktemeldinger" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Åpne direktemeldingssamtale" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Åpne faktura {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Åpne lenke" @@ -23850,7 +23857,7 @@ msgstr "Åpne hurtigbytter" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Åpne innstillinger" @@ -23935,11 +23942,6 @@ msgstr "Åpne temastudio i et eget vindu" msgid "Open theme studio…" msgstr "Åpne temastudio …" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Åpne dette vinduet fra {productName} for å bruke passnøkkelen din." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Alternativer" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Passnøkkel" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Passnøkkelnavn" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Passnøkkel oppdatert" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Passnøkler" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Passnøkler krever en signert macOS-pakke med en gyldig applikasjonsidentifikator. Installer den signerte skrivebordsklienten og prøv på nytt." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Passord" msgid "Password changed" msgstr "Passord endret" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Passordbehandlere tilbyr kanskje ikke passnøkkelen din på denne nettadressen. Prøv heller i et popup-vindu på den gamle adressen." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Lim inn meldingslenken." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Personlig ordbok" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Personlige notater" @@ -24885,7 +24887,7 @@ msgstr "Fest gruppechat" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Fest melding" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "festet" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Festet direktemeldingssamtale" @@ -25020,7 +25022,7 @@ msgstr "Plattformadministrator" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Spill av" @@ -25318,6 +25320,11 @@ msgstr "Trykk en tast, museknapp eller gamepad-knapp for å tilordne. Esc avbryt msgid "Press a shortcut…" msgstr "Trykk en snarvei …" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Trykk på «Fortsett» for å bruke passnøkkelen din." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Hovedspråk" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Hovednavigasjon" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Personvernregler" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Personverninnstillinger" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Profftips:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Fortsett" @@ -26090,7 +26097,7 @@ msgstr "Reager med {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Hvis du genererer på nytt, blir det nåværende tokenet ugyldig. Oppdater all kode som bruker den gamle verdien." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registrer deg" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Registrerte passnøkler" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Fjern banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Fjern fra lagrede meldinger" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Fjern fra ordbok" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Fjern fra favoritter" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Fjernet fra favoritt-GIF-er" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Fjernet fra favoritter" @@ -27032,7 +27039,7 @@ msgstr "Fjerning av tillatelser kan begrense botens funksjoner." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Når timeouten fjernes, kan <0>{targetUserTag} sende meldinger, reagere og bli med i talekanaler igjen." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Gi nytt navn" @@ -27119,7 +27126,7 @@ msgstr "Svar" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Svar" @@ -27209,7 +27216,7 @@ msgstr "Rapporter problem" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Rapporter melding" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Krev 2FA for modereringshandlinger" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Krev en passnøkkel som din andre faktor" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Tilbakestillingslenken er ugyldig eller utløpt" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Tilbakestill samtykkestatus for voksent innhold" @@ -27880,7 +27887,7 @@ msgstr "Omvendt bildesøk" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Omvendt bildesøk" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Se gjennom og bekreft" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Se gjennom apper som kan få tilgang til kontoen din." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Se tidligere kjøp og refusjonsalternativer" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Se over enhetene som er logget inn, og logg ut økter du ikke kjenner igjen." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rolle oppdatert" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Roller" @@ -28261,7 +28268,7 @@ msgstr "Metning" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Omfang" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Omfang" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Skjermleser" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Søk etter kanaler, personer eller fellesskap" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Søk etter venner" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Søk etter markert tekst" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Søk i innstillinger" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Søk i innstillinger …" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Sikkerhet" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Sikkerhetsfunksjoner" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Sikkerhetsnøkkel" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Sikkerhetsnøkkel / passnøkkel" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Sensitive medier" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Sendt" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Økt" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Økten er utløpt for {identifier}. Logg på igjen." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Angir nivået for alle lydeffekter. Overstyringer per lyd ignorerer dette." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Innstillinger åpnet." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Innstillingsseksjoner" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Sidefelt" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Logg på" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Logg på for å hente gaven din" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Logg på via nettleser" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Logg på med passnøkkel" @@ -30666,7 +30673,7 @@ msgstr "Logg på med organisasjonens leverandør for enkeltpålogging." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Logg ut" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Påloggingsopplysninger" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Påloggingsflyt" @@ -31189,7 +31196,7 @@ msgstr "Noen brukere kan ikke legges til" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Noe gikk galt" @@ -31374,7 +31381,7 @@ msgstr "Lydvolum" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Lyder" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Begynn å laste opp vedlegg så snart de legges til i meldingsfeltet" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Start videosamtale" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Start taleanrop" @@ -31899,7 +31906,7 @@ msgstr "klistremerke" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Klistremerke: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Klistremerker" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Slutte å stole på alle lenker?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Slutte å bruke passnøkler for tofaktorautentisering?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Demp alle rolleomtaler" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Skjul innebygd innhold" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "tekstkanal" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Tekstkanal" @@ -33055,7 +33062,7 @@ msgstr "Send oss en tekstmelding fra telefonen din" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Tekst til tale" @@ -33119,6 +33126,11 @@ msgstr "Det ble ikke fullført. Noen fellesskap kan allerede være forlatt, og k msgid "That did not go through. Nothing changed. Try again." msgstr "Det gikk ikke. Ingenting er endret. Prøv igjen." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Det fungerte ikke. Prøv igjen eller avbryt." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Det ser ikke ut som en gyldig farge. Prøv heksadesimal, rgb(), hsl() eller et CSS-fargenavn." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Det bildet kunne ikke brukes. Prøv en annen fil." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Bildet er ugyldig. Prøv et annet." @@ -34035,11 +34047,11 @@ msgstr "Dette er beskrivelsen av det andre alternativet" msgid "This is the third option description" msgstr "Dette er beskrivelsen for det tredje alternativet" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Dette er din siste passnøkkel, og passnøkler er din andre faktor. Hvis du sletter den, slås tofaktorautentisering av for kontoen din, og de nåværende reservekodene dine slutter å fungere." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Dette er din siste passnøkkel. Når den er borte, kan du ikke lenger bruke en passnøkkel som din andre faktor." @@ -34154,16 +34166,6 @@ msgstr "Denne deltakeren har slått av lyden" msgid "This participant was deafened by moderators" msgstr "Moderatorene har slått av lyden for denne deltakeren" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Denne passnøkkelforespørselen kunne ikke bekreftes. Lukk dette vinduet og prøv igjen." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Denne passnøkkelforespørselen ble tidsavbrutt. Lukk dette vinduet og prøv igjen." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Dette fjerner alle klarerte domener. Du vil se advarselen for eksterne l msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Dette fjerner alle egendefinerte snarveier og aktiverer alle innebygde snarveier på nytt. Dette kan ikke angres." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Denne forespørselen er utløpt. Gå tilbake og prøv igjen." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Denne tilbakestillingslenken har utløpt. Tilbakestillingslenker varer i 1 time. Vennligst be om en ny." @@ -34807,7 +34814,7 @@ msgstr "Overføre gruppeeierskap til {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Overfør eierskap" @@ -34823,7 +34830,7 @@ msgstr "Overførte eierskap til {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Oversett" @@ -34980,7 +34987,7 @@ msgstr "Prøv et annet variabelnavn eller tøm søket." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Prøv igjen" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Prøv igjen" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Prøv igjen om en liten stund." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Prøv å søke etter for eksempel «tema», «varsler» eller «personvern»" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Prøv sikkerhetsnøkkel / passnøkkel i stedet" @@ -35088,7 +35095,7 @@ msgstr "Tyrkisk" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Slå av" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Slå av lyddeling for denne kilden, eller prøv igjen om et øyeblikk." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Slå av kamera" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Slå av strømmepersonvern før du viser påloggings- eller kontosikkerhetsdetaljer." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Slå på" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Tofaktor" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Tofaktorautentisering" @@ -35288,7 +35295,7 @@ msgstr "Tofaktorautentisering deaktivert" msgid "Two-factor authentication enabled" msgstr "Tofaktorautentisering aktivert" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Tofaktorautentisering er aktivert" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Opphev blokkering av bruker" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Ukategorisert" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Understrek lenker til nettsteder" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Forstått" @@ -35643,7 +35650,7 @@ msgstr "Universelt reservealternativ. Lavest kvalitet, men fungerer overalt." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Slå på mikrofonen på alle enheter" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Opphev demping av kategori" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Opphev demping av fellesskap" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Opphev demping av fellesskap" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Opphev demping av direktemeldingssamtaler" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Opphev demping av favoritter" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Løsne den" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Løsne melding" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Løsne denne meldingen?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Løsnet direktemeldingssamtale" @@ -36193,6 +36200,11 @@ msgstr "Oppdater e-post" msgid "Update my status" msgstr "Oppdater statusen min" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Oppdater passnøkkel" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Oppdater timeout" msgid "Update your own nickname." msgstr "Oppdater ditt eget kallenavn." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Oppdater passnøkkelen din" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Bruk et eget dialogvindu for å angi en grensedato for meldingshistorikk msgid "Use a different email address and verify it with a code." msgstr "Bruk en annen e-postadresse og bekreft den med en kode." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Bruk passnøkkel fra passordbehandler" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Bruk faktisk verdi" msgid "Use alternative method" msgstr "Bruk alternativ metode" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Bruk en autentiseringsapp for å generere koder for tofaktorautentisering" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Bruk bare hvis det tydelig bryter reglene til {productName} og ikke passer inn under noe av det ovenfor." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Bruke passnøkler for tofaktorautentisering?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Bruk passnøkler for å logge på uten passord" @@ -36824,8 +36836,8 @@ msgstr "Bruk stemmeaktivering" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Bruk stavekontrollen i operativsystemet når den er tilgjengelig. Ellers brukes de innebygde ordbøkene i {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Bruk passnøkkelen din" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Brukerkontroller" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Brukerfeilsøking" @@ -36972,7 +36984,7 @@ msgstr "Brukervolum" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Bekreftelsen ble avbrutt" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Bekreftelseskode" @@ -37185,7 +37197,7 @@ msgstr "E-post for bekreftelse er sendt. Sjekk innboksen din." msgid "Verification expired" msgstr "Bekreftelsen er utløpt" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Verifisert fellesskap" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Bekreft" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Bekreft tilkobling" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Bekreft e-post" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Skjema for identitetsbekreftelse" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Bekreft at det er deg" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Bekreft e-postadressen din for å sende venneforespørsler." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Bekreft e-postadressen din før du legger til en passnøkkel." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Bekreft e-postadressen din før du legger til en autentiseringsapp." @@ -37571,7 +37583,7 @@ msgstr "Vis og administrer utestengte brukere." msgid "View and manage every webhook configured across your community." msgstr "Se og administrer alle webhooker som er konfigurert i fellesskapet ditt." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Vis og administrer reservekodene dine for kontogjenoppretting" @@ -37605,7 +37617,7 @@ msgstr "Se kanal" msgid "View channel members" msgstr "Se kanalmedlemmer" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Vis koder" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Se abonnementer" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Vis profil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "talekanal" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Talekanal" @@ -38073,7 +38085,7 @@ msgstr "Annullert" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Vent her" msgid "Waiting for connection..." msgstr "Venter på tilkobling …" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Venter på passnøkkel …" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Se på" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Se på strømmen" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Forhåndsvisning av nettsteder" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Velkommen tilbake" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Du er ikke med i noen fellesskap for øyeblikket." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Du blokkerte {userName}. Du kan ikke sende meldinger med mindre du opphever blokkeringen." @@ -39101,6 +39113,11 @@ msgstr "Du kan avbryte sletteprosessen innen 14 dager" msgid "You can close this modal. The import will continue in the background." msgstr "Du kan lukke dette vinduet. Importen fortsetter i bakgrunnen." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Du kan lukke denne fanen" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Du kan nå lukke denne fanen og gå tilbake til appen." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Du kan ikke sende en venneforespørsel til deg selv." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Du kan ikke sende meldinger i denne kanalen." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Du må fortsatt fullføre e-poststeget." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Du blir ikke lenger bedt om en passnøkkel etter passordet ditt. Autentiseringsappen din forblir din andre faktor." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Du må logge på igjen på alle enheter du har logget av fra" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Du trenger én av passnøklene dine for å logge på fra en ny enhet. Hvis du mister alle passnøklene, kan du bli låst ute av kontoen din for godt. Reservekoder blir lagret for deg, så du fortsatt har en vei inn." @@ -39918,12 +39935,12 @@ msgstr "Kontoen din er for ny til å sende meldinger i dette fellesskapet." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Kontoforespørselen din venter på godkjenning. Du kan logge på når en administrator har godkjent den." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Kontoen din krever multifaktorautentisering, men ingen støttede metoder er konfigurert på denne enheten. Logg på fra en enhet med autentiseringsappen eller sikkerhetsnøkkelen din, eller kontakt kundestøtte." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Kontoen din vil ikke lenger være beskyttet av tofaktorautentisering når du logger på med passordet ditt. Du vil også miste forhøyede tillatelser i fellesskap som krever tofaktorautentisering." @@ -39941,16 +39958,6 @@ msgstr "Handlingen din kunne ikke fullføres fordi den ble flagget av sikkerhets msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Søknaden din venter på gjennomgang. Du kan fortsatt oppdatere oppføringsdetaljene eller trekke tilbake søknaden." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Nettleseren din blokkerte popup-vinduet for passnøkkelen. Tillat popup-vinduer for dette nettstedet og prøv igjen." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Nettleseren din støtter ikke passnøkler på dette domenet. Oppdater nettleseren, eller logg på med passordet ditt og tofaktorkoden." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Fellesskapet ditt må ha minst {minMemberCount, plural, one {# medlem} o msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Kredittkortet ditt er sjekket. Hvis kortet er gyldig, vil voksent innhold låses opp om kort tid. Du kan lukke denne fanen og gå tilbake til appen." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Enheten din vil be deg om å lagre en oppdatert passnøkkel for {name}. Den erstatter den gamle." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Enheten din vil be deg om å lagre en oppdatert passnøkkel for {name}. Bruk samme telefon eller sikkerhetsnøkkel som du nettopp brukte." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Zoom inn" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/pl/messages.po b/fluxer_app/src/features/i18n/locales/pl/messages.po index 76cf8d513..8d465bb63 100644 --- a/fluxer_app/src/features/i18n/locales/pl/messages.po +++ b/fluxer_app/src/features/i18n/locales/pl/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {członek} few {członków} many {członków} other {członków}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# wzmianka} few {# wzmianki} many {# wzmianek} other {# wzmianki}}" @@ -2370,8 +2370,8 @@ msgstr "6 miesięcy" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-cyfrowy kod" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Wymuszanie stanu konta i premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Dostęp do konta" @@ -2807,7 +2807,7 @@ msgstr "Aktywny subskrybent miesięczny (anulowanie zaplanowane)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Dodaj konto, aby kontynuować." msgid "Add an email and password to your account first." msgstr "Najpierw dodaj adres e-mail i hasło do swojego konta." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Dodaj dodatkową warstwę zabezpieczeń do swojego konta" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Dodaj bota do miejsca docelowego" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Dodaj kanał" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Dodawaj nowe reakcje do wiadomości." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Dodaj notatkę" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Dodaj indywidualne uprawnienia" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Dodaj klucz dostępu" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Dodaj reakcję" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Dodaj do słownika" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Dodaj do ulubionych" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Dodano do ulubionych GIF-ów" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Dodano do ulubionych" @@ -3296,11 +3296,11 @@ msgstr "Dodano do ulubionych" msgid "Added to saved media" msgstr "Dodano do zapisanych multimediów" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Dodano: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Dodano: {createdDate} • ostatnio używano: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Wszystkie języki" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Wszystkie wiadomości" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Już usunięto" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Masz już konto?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Powiększenie aplikacji" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Poziom powiększenia aplikacji" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Zatwierdź" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Zatwierdź tę aplikację w aplikacji {productName}, której już używasz. Hasło nie jest potrzebne." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Czy na pewno chcesz usunąć kategorię \"{categoryName}\"? Tej operacji nie można cofnąć." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Czy na pewno chcesz usunąć klucz dostępu <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Czy na pewno chcesz usunąć ten załącznik? Tej operacji nie można co msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Czy na pewno chcesz usunąć tę społeczność? Tej operacji nie można cofnąć. Wszystkie kanały, wiadomości i ustawienia zostaną trwale usunięte." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Czy na pewno chcesz usunąć ten klucz dostępu?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Pytaj przed rozpoczęciem połączeń" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Pytaj o klucz dostępu po podaniu hasła podczas logowania" @@ -4690,7 +4690,7 @@ msgstr "Załączniki" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Dźwięk" @@ -4851,14 +4851,14 @@ msgstr "Uwierzytelnianie" msgid "Authenticator" msgstr "Aplikacja uwierzytelniająca" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Aplikacja uwierzytelniająca" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Kod z aplikacji uwierzytelniającej" @@ -4928,7 +4928,7 @@ msgstr "Autoryzowane aplikacje" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Chwilowo mnie nie ma" msgid "Back" msgstr "Wstecz" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Wróć do {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Wróć do ról" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Wróć do ustawień" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Wróć do logowania" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Kod zapasowy" @@ -5351,7 +5356,7 @@ msgstr "Kod zapasowy" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Osiągnięto limit zakładek" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Połączenia" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera wyłączona" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera włączona" @@ -6364,9 +6369,9 @@ msgstr "Nie można tu przesyłać plików" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Nie można tu przesyłać plików" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Zmień emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Zmień pseudonim znajomego" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Zmień mój pseudonim w grupie" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Zmień pseudonim" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Działania kanału" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanał dodany do ulubionych" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanał utworzony" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Debugowanie kanału" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanał usunięty" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Rekord kanału" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanał usunięty z ulubionych" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Wybierz kolor akcentu profilu" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Dokończ rejestrację konta" @@ -7715,7 +7720,7 @@ msgstr "Dokończ rejestrację konta i zweryfikuj swój adres e-mail, aby wysyła msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Dokończ rejestrację konta, dodając adres e-mail i hasło. Przed zakończeniem wyślemy kod weryfikacyjny, aby potwierdzić Twój adres e-mail." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Dokończ rejestrację konta, aby uzyskać dostęp do funkcji bezpieczeństwa, takich jak uwierzytelnianie dwuskładnikowe i klucze dostępu." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Wyczyścić szybki CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Wyczyść wyszukiwanie" @@ -8103,7 +8108,7 @@ msgstr "Klonowanie jest wyłączone" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Zamknij" @@ -8160,11 +8165,9 @@ msgstr "Pozostaw na pasku menu po zamknięciu" msgid "Close to tray" msgstr "Pozostaw w zasobniku systemowym po zamknięciu" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Zamknij okno" @@ -8456,7 +8459,7 @@ msgstr "Komunikacja" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Debugowanie społeczności" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Domyślne dla społeczności" @@ -8577,7 +8580,7 @@ msgstr "Rekord członka społeczności" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Członkowie społeczności" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Poziom powiadomień społeczności" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Ustawienia powiadomień społeczności" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Porównanie" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Ukończ weryfikację treści dla dorosłych" @@ -9093,7 +9096,7 @@ msgstr "Połączenie: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Menu kontekstowe można otworzyć lewym przyciskiem myszy (na przyciskac #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Dalej" msgid "Continue to checkout" msgstr "Przejdź do płatności" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Kontynuuj tworzenie klucza dostępu dla {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Kontynuuj zgłaszanie społeczności" msgid "Continue to report user" msgstr "Kontynuuj zgłaszanie użytkownika" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Kontynuuj z kluczem dostępu" @@ -9238,11 +9238,6 @@ msgstr "Kontynuuj z kluczem dostępu" msgid "Continue with SSO" msgstr "Kontynuuj przez SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Kontynuuj za pomocą klucza dostępu, aby zalogować się do {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Koordynuje naloty, zmasowane ataki lub nękanie osób bądź społeczno #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Skopiowano" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kopiuj ID kategorii" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kopiuj ID kanału" @@ -9421,12 +9416,12 @@ msgstr "Kopiuj link do kanału" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Kopiuj kod" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Kopiuj identyfikator społeczności" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Kopiuj link z zaproszeniem" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Kopiuj wiadomość" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Kopiuj identyfikator wiadomości" @@ -9570,7 +9565,7 @@ msgstr "Kopiuj identyfikator wiadomości" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Kopiuj adres URL naklejki" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Skopiuj klucz konfiguracji do aplikacji uwierzytelniającej." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Kopiuj ID użytkownika" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Kopiuj nazwę użytkownika" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Nie udało się usunąć aplikacji" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Nie udało się usunąć klucza dostępu" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Nie udało się wysłać zaproszenia" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Nie udało się wysłać zaproszenia. Spróbuj ponownie." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Nie udało się zaktualizować pominięcia wyciszenia wzmianek" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Nie udało się zaktualizować uwierzytelniania dwuskładnikowego opartego na kluczach dostępu" @@ -10206,6 +10201,11 @@ msgstr "Nie udało się zaktualizować tekstu alternatywnego. Spróbuj ponownie. msgid "Couldn't update voice activity sharing right now" msgstr "Nie udało się teraz zaktualizować udostępniania aktywności głosowej" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Nie udało się zaktualizować klucza dostępu. Spróbuj ponownie." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Nie udało się przesłać awatara" msgid "Couldn't upload banner" msgstr "Nie udało się przesłać banera" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Nie udało się użyć klucza dostępu w oknie podręcznym. Spróbuj ponownie." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Nie udało się zweryfikować kodu. Spróbuj ponownie." msgid "Couldn't verify the connection" msgstr "Nie udało się zweryfikować połączenia" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Nie udało się zweryfikować za pomocą klucza dostępu. Spróbuj ponownie." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Wygodny" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Utwórz" @@ -10298,7 +10293,7 @@ msgstr "Utwórz nową grupę z {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Utwórz aplikację" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Utwórz kategorię" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Utwórz kanał" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Utwórz społeczność" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Własny tekst ostrzeżenia" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Niestandardowe…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Debugowanie" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Debuguj kanał" @@ -11164,7 +11159,7 @@ msgstr "Debuguj wiadomość" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Debuguj użytkownika" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Usuń \"{fileName}\"" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Usuń konto" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Usuń aplikację" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Usuń załącznik" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Usuń multimedia" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Usuń wiadomość" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Usuwaj wiadomości innych członków. Przypinanie wymaga osobnego uprawnienia." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Usuń klucz dostępu" @@ -11701,7 +11696,7 @@ msgstr "Opisz tematykę swojej społeczności" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Opis" @@ -11966,7 +11961,7 @@ msgstr "Urządzenie:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Bezpośrednie wejście" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Wiadomość prywatna" @@ -12050,7 +12045,7 @@ msgstr "Podgląd wiadomości prywatnych" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Wiadomości prywatne" @@ -12077,14 +12072,14 @@ msgstr "Bezpośrednie przesyłanie aktywne" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Wyłącz" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Wyłącz konto" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Rozłączono" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Społeczność w Odkrywaniu" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Dyskryminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Zamknij" @@ -12477,7 +12472,7 @@ msgstr "Ustawienia DM i zaproszeń do znajomych" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Rozmowa prywatna zamknięta" @@ -12607,7 +12602,7 @@ msgstr "Nie blokuje. Możesz ponownie otworzyć później." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domena" @@ -12697,7 +12692,7 @@ msgstr "Kliknij dwukrotnie wybraną osobę, aby oglądać jej transmisję." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Niderlandzki" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "np. YubiKey, iPhone, komputer służbowy" @@ -13092,7 +13087,7 @@ msgstr "Edytuj ustawienia globalne, takie jak nazwa, opis i ikona." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Edytuj grupę" @@ -13123,7 +13118,7 @@ msgstr "Edytuj multimedia" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Edytuj wiadomość" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Zwrot możliwy do {windowEndsOn}. Spowoduje to również natychmiastowe anulowanie subskrypcji." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-mail" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji zaktualizowane" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emoji" @@ -13525,7 +13520,7 @@ msgstr "Brak ulubionych" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Włącz" @@ -13680,7 +13675,7 @@ msgstr "Włącz powiadomienia push na urządzeniach mobilnych" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Włącz powiadomienia" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Włącz integracje, dla których skonfigurowano dane uwierzytelniające. Wyświetlane są tylko dostępne usługi." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Włącz uwierzytelnianie dwuskładnikowe" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Angielski (USA)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Ulepszone" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Wprowadź nowy adres e-mail" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Wpisz jeden z kodów zapasowych, jeśli nie możesz użyć klucza dostępu." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Wpisz jeden z kodów zapasowych." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Wpisz tekst" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Wprowadź {digitCount}-cyfrowy kod z aplikacji uwierzytelniającej lub kod zapasowy." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Wpisz kod, aby kontynuować." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Wpisz kod z aplikacji uwierzytelniającej." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Wpisz swoje imię" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Wprowadź hasło." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Subskrypcja wygasła <0>{expiredDate}. Nie są już aktywne <1/>. Możesz ponownie wykupić subskrypcję w dowolnym momencie." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Wygasa" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Autouzupełnianie wyrażeń" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Kategorie panelu wyboru wyrażeń" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Nie udało się przygotować emoji" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Nie udało się przetworzyć przyciętego obrazu. Spróbuj ponownie." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Nie udało się uruchomić SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Nie udało się przełączyć konta" @@ -15053,7 +15048,7 @@ msgstr "Ulubione" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Ulubione" @@ -15268,6 +15263,11 @@ msgstr "Zakończ konfigurowanie konta" msgid "Finish account setup first" msgstr "Najpierw dokończ konfigurację konta" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Dokończ w nowej karcie. Jeśli została zamknięta, ponownie naciśnij „Kontynuuj z kluczem dostępu”." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Nazwa folderu" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Ustawienia folderu" @@ -15479,7 +15479,7 @@ msgstr "Dla mnie" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "W ramach tej weryfikacji wyślesz nam wiadomość SMS, zamiast ją od nas otrzymać." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Dla Twojego bezpieczeństwa potwierdź swoją tożsamość, aby kontynuować." @@ -15606,7 +15606,7 @@ msgstr "Nie pamiętasz hasła" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Nie pamiętasz hasła?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Tylko znajomi i małe społeczności" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Znajomi znajomych" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "RODO" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Ogólne" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Niemcy" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Kup {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "Adresy URL GIF-ów" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF-y" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Skrót globalny" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Wróć" @@ -16374,6 +16374,11 @@ msgstr "Wróć" msgid "Go back and enter a valid email." msgstr "Wróć i wprowadź prawidłowy adres e-mail." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Wróć do {productName}, aby kontynuować." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Ukryj przypisy o dacie ważności" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Ukryj ulubione" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Ukryj wyciszone" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Ukryj wyciszone kanały" @@ -17358,7 +17363,7 @@ msgstr "Tożsamość" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Nieaktywny" @@ -17818,7 +17823,7 @@ msgstr "Nieodpowiedni profil" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Skrzynka odbiorcza" @@ -17867,7 +17872,7 @@ msgstr "Podaj identyfikator społeczności." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Podgląd strony z zaproszeniem" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Zaproś osoby" @@ -18456,7 +18461,7 @@ msgstr "Zapraszający:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Zaproszenia" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Dołącz do rozmowy" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Dołącz do społeczności" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Dołączenie do {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Przejdź" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Wyrzuć członka z tej społeczności." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Wyrzuć członka" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Opuść rozmowę" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Opuść społeczność" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Kreator linków" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Link skopiowany do schowka" @@ -19859,8 +19864,8 @@ msgstr "Złośliwe oprogramowanie lub niebezpieczne linki" msgid "Malware, credential theft, or harmful files." msgstr "Złośliwe oprogramowanie, kradzież danych uwierzytelniających lub szkodliwe pliki." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Zarządzaj" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Zarządzaj kontami" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Zarządzaj aplikacjami i urządzeniami, które mają dostęp do Twojego konta" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Oznacz wszystkie nieprzeczytane kanały w skrzynce odbiorczej jako przeczytane natychmiast, bez pytania o potwierdzenie" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Oznacz jako przeczytane" @@ -20021,7 +20026,7 @@ msgstr "Oznacz jako spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Oznacz jako nieprzeczytane" @@ -20169,7 +20174,7 @@ msgstr "Społeczność dla dorosłych" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Treści dla dorosłych" @@ -20315,7 +20320,7 @@ msgstr "Pomiar…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "członków" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Członkowie" @@ -20616,7 +20621,7 @@ msgstr "Wspomnieć o tej roli?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Wzmianki" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Więcej opcji multimediów" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Więcej opcji" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Wycisz połączenia" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Wycisz kategorię" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Wycisz społeczności" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Wycisz społeczność" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Wycisz dźwięk wejścia" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Wycisz ulubione" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Nazwa musi mieć co najmniej 2 znaki" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Nazwij klucz dostępu" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formularz nazwy klucza dostępu" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Nie masz konta?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Nigdy" @@ -22276,7 +22281,7 @@ msgstr "Najpierw najnowsze" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Dalej" @@ -22905,7 +22910,7 @@ msgstr "Nie znaleziono użytkowników" msgid "No verification is required." msgstr "Weryfikacja nie jest wymagana." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Brak dostępnych metod weryfikacji" @@ -23038,11 +23043,13 @@ msgstr "Nie znaleziono" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Nie teraz" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Notatka (widoczna tylko dla Ciebie)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Nic" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Indywidualne ustawienia powiadomień" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Ustawienia powiadomień" @@ -23152,7 +23159,7 @@ msgstr "Głośność powiadomień" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Wyłączone" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "OK" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Tylko członkowie z uprawnieniem „{manageCommunityPermissionLabel}” mogą to zmienić." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Tylko wzmianki" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Otwórz {labelText} w ustawieniach" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Otwórz {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Otwarte rozmowy prywatne" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Otwórz rozmowę prywatną" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Otwórz fakturę {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Otwórz link" @@ -23850,7 +23857,7 @@ msgstr "Otwórz szybkie przełączanie" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Otwórz ustawienia" @@ -23935,11 +23942,6 @@ msgstr "Otwórz wyskakujące okienko studia motywów" msgid "Open theme studio…" msgstr "Otwórz studio motywów…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Otwórz to okno z poziomu {productName}, aby użyć swojego klucza dostępu." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Opcje" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Klucz dostępu" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Nazwa klucza dostępu" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Klucz dostępu zaktualizowany" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Klucze dostępu" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Klucze dostępu wymagają podpisanego pakietu aplikacji macOS z prawidłowym identyfikatorem aplikacji. Zainstaluj podpisaną aplikację komputerową i spróbuj ponownie." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Hasło" msgid "Password changed" msgstr "Hasło zmienione" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Menedżery haseł mogą nie oferować Twojego klucza dostępu pod tym adresem internetowym. Spróbuj zamiast tego w oknie podręcznym pod starym adresem." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Wklej link do wiadomości." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Słownik osobisty" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Notatki osobiste" @@ -24885,7 +24887,7 @@ msgstr "Przypnij czat grupowy" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Przypnij wiadomość" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "przypięta" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Przypięta rozmowa prywatna" @@ -25020,7 +25022,7 @@ msgstr "Administrator platformy" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Odtwórz" @@ -25318,6 +25320,11 @@ msgstr "Naciśnij klawisz, przycisk myszy lub przycisk pada, aby go przypisać. msgid "Press a shortcut…" msgstr "Naciśnij skrót…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Naciśnij „Dalej”, aby użyć klucza dostępu." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Język podstawowy" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Główna nawigacja" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Polityka prywatności" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Ustawienia prywatności" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Wskazówka:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Kontynuuj" @@ -26090,7 +26097,7 @@ msgstr "Zareaguj: {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Wygenerowanie nowego tokena unieważni obecny. Zaktualizuj cały kod, który używa starej wartości." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Zarejestruj się" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Zarejestrowane klucze dostępu" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Usuń baner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Usuń zakładkę" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Usuń ze słownika" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Usuń z ulubionych" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Usunięto z ulubionych GIF-ów" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Usunięto z ulubionych" @@ -27032,7 +27039,7 @@ msgstr "Usunięcie uprawnień może ograniczyć funkcje bota." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Cofnięcie czasowego ograniczenia pozwoli użytkownikowi <0>{targetUserTag} ponownie wysyłać wiadomości, reagować i dołączać do kanałów głosowych." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Zmień nazwę" @@ -27119,7 +27126,7 @@ msgstr "Odpowiedzi" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Odpowiedz" @@ -27209,7 +27216,7 @@ msgstr "Zgłoś problem" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Zgłoś wiadomość" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Wymagaj 2FA dla działań moderacyjnych" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Wymagaj klucza dostępu jako drugiego czynnika uwierzytelniania" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Link do resetowania hasła jest nieprawidłowy lub wygasł" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Zresetuj stan zgody na treści dla dorosłych" @@ -27880,7 +27887,7 @@ msgstr "Wyszukiwanie obrazem" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Wyszukiwanie obrazem" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Przejrzyj i potwierdź" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Sprawdź aplikacje, które mają dostęp do Twojego konta." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Sprawdź poprzednie zakupy i opcje zwrotu środków" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Sprawdź zalogowane urządzenia i wyloguj sesje, których nie rozpoznajesz." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rola zaktualizowana" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Role" @@ -28261,7 +28268,7 @@ msgstr "Nasycenie" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Zakres" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Zakresy autoryzacji" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Czytnik ekranu" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Szukaj kanałów, osób lub społeczności" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Szukaj znajomych" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Szukaj zaznaczonego tekstu" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Szukaj ustawień" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Szukaj ustawień…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Bezpieczeństwo" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Funkcje bezpieczeństwa" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Klucz bezpieczeństwa" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Klucz bezpieczeństwa / klucz dostępu" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Wrażliwe multimedia" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Wysłano" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Sesja" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Sesja dla {identifier} wygasła. Zaloguj się ponownie." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Ustawia głośność wszystkich efektów dźwiękowych. Indywidualne ustawienia dźwięków mają pierwszeństwo." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Otwarto ustawienia." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Sekcje ustawień" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Pasek boczny" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Zaloguj się" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Zaloguj się, aby odebrać prezent" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Zaloguj się przez przeglądarkę" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Zaloguj się za pomocą klucza dostępu" @@ -30666,7 +30673,7 @@ msgstr "Zaloguj się, używając dostawcy logowania jednokrotnego Twojej organiz #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Wyloguj się" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Dane logowania" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Proces logowania" @@ -31189,7 +31196,7 @@ msgstr "Niektórych użytkowników nie można dodać" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Coś poszło nie tak" @@ -31374,7 +31381,7 @@ msgstr "Głośność dźwięku" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Dźwięki" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Rozpocznij przesyłanie załączników natychmiast po dodaniu ich do pola wiadomości" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Rozpocznij rozmowę wideo" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Rozpocznij połączenie głosowe" @@ -31899,7 +31906,7 @@ msgstr "naklejka" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Naklejka: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Naklejki" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Przestać ufać wszystkim linkom?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Przestać używać kluczy dostępu do uwierzytelniania dwuskładnikowego?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Wycisz wszystkie wzmianki o rolach" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Ukryj osadzone treści" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "kanał tekstowy" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Kanał tekstowy" @@ -33055,7 +33062,7 @@ msgstr "Wyślij nam SMS-a ze swojego telefonu" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Synteza mowy" @@ -33119,6 +33126,11 @@ msgstr "Nie udało się dokończyć. Niektóre społeczności mogły zostać ju msgid "That did not go through. Nothing changed. Try again." msgstr "Nie udało się. Nic się nie zmieniło. Spróbuj ponownie." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Nie udało się. Spróbuj ponownie lub anuluj." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "To nie wygląda na prawidłowy kolor. Spróbuj formatu szesnastkowego, rgb(), hsl() lub nazwy koloru CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Nie udało się użyć tego obrazu. Spróbuj innego pliku." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Ten obraz jest nieprawidłowy. Spróbuj z innym." @@ -34035,11 +34047,11 @@ msgstr "To jest opis drugiej opcji" msgid "This is the third option description" msgstr "To jest opis trzeciej opcji" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "To Twój ostatni klucz dostępu, a klucze dostępu są Twoim drugim czynnikiem uwierzytelniania. Usunięcie go wyłączy uwierzytelnianie dwuskładnikowe na Twoim koncie, a obecne kody zapasowe przestaną działać." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "To Twój ostatni klucz dostępu. Po jego usunięciu nie będzie można używać klucza dostępu jako drugiego czynnika uwierzytelniania." @@ -34154,16 +34166,6 @@ msgstr "Ten uczestnik ma wyłączony dźwięk" msgid "This participant was deafened by moderators" msgstr "Moderatorzy wyłączyli dźwięk temu uczestnikowi" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Nie udało się zweryfikować tego żądania klucza dostępu. Zamknij to okno i spróbuj ponownie." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Upłynął limit czasu żądania klucza dostępu. Zamknij to okno i spróbuj ponownie." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Spowoduje to usunięcie wszystkich zaufanych domen. Ponownie zobaczysz o msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Spowoduje to usunięcie wszystkich niestandardowych skrótów i ponowne włączenie wszystkich wbudowanych skrótów. Tej operacji nie można cofnąć." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "To żądanie wygasło. Wróć i spróbuj ponownie." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Ten link do resetowania wygasł. Linki do resetowania są ważne przez 1 godzinę. Poproś o nowy." @@ -34807,7 +34814,7 @@ msgstr "Przekazać własność grupy użytkownikowi {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Przekaż własność" @@ -34823,7 +34830,7 @@ msgstr "Przekazano własność użytkownikowi {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Przetłumacz" @@ -34980,7 +34987,7 @@ msgstr "Spróbuj innej nazwy zmiennej lub wyczyść wyszukiwanie." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Spróbuj ponownie" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Spróbuj ponownie" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Spróbuj ponownie za chwilę." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Spróbuj wyszukać coś w stylu „motyw”, „powiadomienia” lub „prywatność”" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Spróbuj użyć klucza bezpieczeństwa / klucza dostępu" @@ -35088,7 +35095,7 @@ msgstr "turecki" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Wyłącz" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Wyłącz udostępnianie dźwięku dla tego źródła lub spróbuj ponownie za chwilę." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Wyłącz kamerę" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Wyłącz prywatność transmisji, zanim wyświetlisz dane logowania lub szczegóły zabezpieczeń konta." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Włącz" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Uwierzytelnianie dwuskładnikowe" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Uwierzytelnianie dwuskładnikowe" @@ -35288,7 +35295,7 @@ msgstr "Uwierzytelnianie dwuskładnikowe wyłączone" msgid "Two-factor authentication enabled" msgstr "Uwierzytelnianie dwuskładnikowe włączone" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Uwierzytelnianie dwuskładnikowe jest włączone" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Odblokuj użytkownika" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Bez kategorii" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Podkreślaj linki do stron internetowych" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Rozumiem" @@ -35643,7 +35650,7 @@ msgstr "Uniwersalna opcja awaryjna. Najniższa jakość, ale działa wszędzie." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Włącz mikrofon na wszystkich urządzeniach" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Cofnij wyciszenie kategorii" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Cofnij wyciszenie społeczności" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Cofnij wyciszenie społeczności" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Cofnij wyciszenie rozmów prywatnych" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Cofnij wyciszenie ulubionych" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Odepnij" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Odepnij wiadomość" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Odpiąć tę wiadomość?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Odpięto rozmowę prywatną" @@ -36193,6 +36200,11 @@ msgstr "Zaktualizuj adres e-mail" msgid "Update my status" msgstr "Zaktualizuj mój status" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Zaktualizuj klucz dostępu" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Zaktualizuj czasowe ograniczenie" msgid "Update your own nickname." msgstr "Zmień swój pseudonim." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Zaktualizuj swój klucz dostępu" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Użyj osobnego okna, aby ustawić datę graniczną historii wiadomości msgid "Use a different email address and verify it with a code." msgstr "Użyj innego adresu e-mail i zweryfikuj go kodem." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Użyj klucza dostępu z menedżera haseł" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Użyj rzeczywistej wartości" msgid "Use alternative method" msgstr "Użyj innej metody" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Użyj aplikacji uwierzytelniającej do generowania kodów uwierzytelniania dwuskładnikowego" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Użyj tylko wtedy, gdy wyraźnie łamie zasady {productName} i nie pasuje do żadnej z powyższych kategorii." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Używać kluczy dostępu do uwierzytelniania dwuskładnikowego?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Używaj kluczy dostępu do logowania bez hasła" @@ -36824,8 +36836,8 @@ msgstr "Używaj aktywacji głosowej" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Używaj sprawdzania pisowni dostępnego w Twoim systemie operacyjnym. W przeciwnym razie korzystaj ze wbudowanych słowników {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Użyj swojego klucza dostępu" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Panel użytkownika" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Debugowanie użytkownika" @@ -36972,7 +36984,7 @@ msgstr "Głośność użytkownika" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Weryfikacja anulowana" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Kod weryfikacyjny" @@ -37185,7 +37197,7 @@ msgstr "Wysłano e-mail weryfikacyjny. Sprawdź swoją skrzynkę odbiorczą." msgid "Verification expired" msgstr "Weryfikacja wygasła" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Zweryfikowana społeczność" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Zweryfikuj" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Zweryfikuj połączenie" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Zweryfikuj e-mail" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formularz weryfikacji tożsamości" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Potwierdź, że to Ty" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Zweryfikuj swój adres e-mail, aby wysyłać zaproszenia do znajomych." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Zweryfikuj swój adres e-mail, zanim dodasz klucz dostępu." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Zweryfikuj swój adres e-mail, zanim dodasz aplikację uwierzytelniającą." @@ -37571,7 +37583,7 @@ msgstr "Wyświetlaj zbanowanych użytkowników i zarządzaj nimi." msgid "View and manage every webhook configured across your community." msgstr "Wyświetlaj wszystkie webhooki skonfigurowane w społeczności i zarządzaj nimi." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Wyświetlaj kody zapasowe do odzyskiwania konta i zarządzaj nimi" @@ -37605,7 +37617,7 @@ msgstr "Wyświetl kanał" msgid "View channel members" msgstr "Wyświetlanie członków kanału" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Wyświetl kody" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Wyświetl plany" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Wyświetl profil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "kanał głosowy" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Kanał głosowy" @@ -38073,7 +38085,7 @@ msgstr "Anulowano" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Poczekaj tutaj" msgid "Waiting for connection..." msgstr "Oczekiwanie na połączenie…" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Czekam na klucz dostępu…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Oglądaj" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Oglądaj transmisję" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Podglądy stron internetowych" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Witamy ponownie" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Nie należysz teraz do żadnych społeczności." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Zablokowano użytkownika {userName}. Nie będzie można wysyłać wiadomości, dopóki go nie odblokujesz." @@ -39101,6 +39113,11 @@ msgstr "Możesz anulować proces usuwania w ciągu 14 dni" msgid "You can close this modal. The import will continue in the background." msgstr "Możesz zamknąć to okno. Importowanie będzie kontynuowane w tle." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Możesz zamknąć tę kartę" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Możesz teraz zamknąć tę kartę i wrócić do aplikacji." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Nie możesz wysłać zaproszenia do znajomych do siebie." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Nie możesz wysyłać wiadomości na tym kanale." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Nadal musisz ukończyć etap weryfikacji e-mail." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Po podaniu hasła nie będzie już wymagany klucz dostępu. Twoja aplikacja uwierzytelniająca pozostanie Twoim drugim czynnikiem uwierzytelniania." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Musisz zalogować się ponownie na wszystkich wylogowanych urządzeniach" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Będziesz potrzebować jednego ze swoich kluczy dostępu, aby zalogować się na nowym urządzeniu. Jeśli stracisz wszystkie klucze dostępu, możesz bezpowrotnie stracić dostęp do konta. Kody zapasowe zostaną dla Ciebie zapisane, dzięki czemu zachowasz możliwość zalogowania się." @@ -39918,12 +39935,12 @@ msgstr "Twoje konto jest zbyt nowe, by wysyłać wiadomości w tej społecznośc msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Twoja prośba o konto oczekuje na zatwierdzenie. Możesz się zalogować po zatwierdzeniu jej przez administratora." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Twoje konto wymaga uwierzytelniania wieloskładnikowego, ale na tym urządzeniu nie skonfigurowano żadnych obsługiwanych metod. Zaloguj się na urządzeniu z aplikacją uwierzytelniającą lub kluczem bezpieczeństwa albo skontaktuj się z pomocą techniczną." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Twoje konto nie będzie już chronione uwierzytelnianiem dwuskładnikowym podczas logowania hasłem. Utracisz również podwyższone uprawnienia w społecznościach, które wymagają uwierzytelniania dwuskładnikowego." @@ -39941,16 +39958,6 @@ msgstr "Nie udało się wykonać tej czynności, ponieważ nasze systemy bezpiec msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Twoje zgłoszenie oczekuje na rozpatrzenie. Nadal możesz zaktualizować szczegóły wpisu lub wycofać zgłoszenie." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Twoja przeglądarka zablokowała wyskakujące okienko klucza dostępu. Zezwól na wyskakujące okienka dla tej witryny i spróbuj ponownie." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Twoja przeglądarka nie obsługuje kluczy dostępu dla tej domeny. Zaktualizuj przeglądarkę lub zaloguj się przy użyciu hasła i kodu dwuskładnikowego." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Twoja społeczność musi mieć co najmniej {minMemberCount, plural, one msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Twoja karta kredytowa została zweryfikowana. Jeśli karta jest ważna, treści dla dorosłych zostaną wkrótce odblokowane. Możesz zamknąć tę kartę i wrócić do aplikacji." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Twoje urządzenie poprosi o zapisanie zaktualizowanego klucza dostępu dla {name}. Zastąpi on stary." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Twoje urządzenie poprosi o zapisanie zaktualizowanego klucza dostępu dla {name}. Użyj tego samego telefonu lub klucza bezpieczeństwa co przed chwilą." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Powiększ okno" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Powiększ" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/pt-BR/messages.po b/fluxer_app/src/features/i18n/locales/pt-BR/messages.po index a8ae2361b..3035e1cb5 100644 --- a/fluxer_app/src/features/i18n/locales/pt-BR/messages.po +++ b/fluxer_app/src/features/i18n/locales/pt-BR/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, =0 {membros} one {membro} other {membros}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, =0 {# menções} one {# menção} many {# menções} other {# menções}}" @@ -2370,8 +2370,8 @@ msgstr "6 meses" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "Código de 6 dígitos" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Substituições de conta e premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Acesso à conta" @@ -2807,7 +2807,7 @@ msgstr "Assinante mensal ativo (cancelamento agendado)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Adicione uma conta para continuar." msgid "Add an email and password to your account first." msgstr "Adicione um e-mail e senha à sua conta primeiro." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Adicione uma camada extra de segurança à sua conta" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Adicionar bot a um destino" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Adicionar canal" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Adicione novas reações às mensagens." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Adicionar nota" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Adicionar exceção" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Adicionar chave de acesso" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Adicionar reação" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Adicionar ao dicionário" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Adicionar aos favoritos" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Adicionado aos GIFs favoritos" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Adicionado aos favoritos" @@ -3296,11 +3296,11 @@ msgstr "Adicionado aos favoritos" msgid "Added to saved media" msgstr "Adicionado às mídias salvas" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Adicionado: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Adicionado: {createdDate} • último uso: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Todos os idiomas" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Todas as mensagens" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Já excluído" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Já tem uma conta?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Zoom do app" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Nível de zoom do app" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Aprovar" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Aprove este app pelo app {productName} que você já usa. Nenhuma senha é necessária." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Tem certeza de que deseja excluir a categoria \"{categoryName}\"? Esta ação não poderá ser desfeita." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Tem certeza de que deseja excluir a chave de acesso <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Tem certeza de que deseja excluir este anexo? Esta ação não pode ser msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Tem certeza de que deseja excluir esta comunidade? Esta ação não poderá ser desfeita. Todos os canais, mensagens e configurações serão excluídos permanentemente." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Tem certeza de que deseja excluir esta chave de acesso?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Perguntar antes de iniciar chamadas" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Pedir uma chave de acesso após sua senha ao fazer login" @@ -4690,7 +4690,7 @@ msgstr "Anexos" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Áudio" @@ -4851,14 +4851,14 @@ msgstr "Autenticação" msgid "Authenticator" msgstr "Autenticador" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "App autenticador" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Código do autenticador" @@ -4928,7 +4928,7 @@ msgstr "Aplicativos autorizados" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Ausente no momento" msgid "Back" msgstr "Voltar" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Voltar ao {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Voltar para cargos" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Voltar para as configurações" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Voltar para o login" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Código de recuperação" @@ -5351,7 +5356,7 @@ msgstr "Código de recuperação" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Limite de mensagens salvas atingido" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Chamadas" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Câmera desativada" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Câmera ligada" @@ -6364,9 +6369,9 @@ msgstr "Não é possível enviar arquivos aqui" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Não é possível enviar arquivos aqui" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Alterar emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Alterar apelido do amigo" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Alterar meu apelido no grupo" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Alterar apelido" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Ações do canal" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Canal adicionado aos favoritos" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Canal criado" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Depuração do canal" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Canal excluído" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Registro do canal" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Canal removido dos favoritos" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Escolha a cor de destaque do seu perfil" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Reivindicar conta" @@ -7715,7 +7720,7 @@ msgstr "Reivindique sua conta e verifique seu e-mail para enviar denúncias." msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Reivindique sua conta adicionando um e-mail e uma senha. Enviaremos um código de verificação para confirmar seu e-mail antes de finalizar." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Reivindique sua conta para acessar recursos de segurança, como autenticação de dois fatores e chaves de acesso." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Limpar CSS rápido?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Limpar pesquisa" @@ -8103,7 +8108,7 @@ msgstr "Clonagem desativada" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Fechar" @@ -8160,11 +8165,9 @@ msgstr "Fechar na barra de menus" msgid "Close to tray" msgstr "Fechar para a bandeja" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Fechar janela" @@ -8456,7 +8459,7 @@ msgstr "Comunicação" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Depuração da comunidade" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Padrão da comunidade" @@ -8577,7 +8580,7 @@ msgstr "Registro de membro da comunidade" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Membros da comunidade" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Nível de notificação da comunidade" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Configurações de notificação da comunidade" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Comparação" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Concluir verificação de conteúdo adulto" @@ -9093,7 +9096,7 @@ msgstr "Conexão: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Os menus de contexto podem ser abertos com um clique esquerdo (em botõe #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Continuar" msgid "Continue to checkout" msgstr "Continuar para o pagamento" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Continuar para criar uma chave de acesso para {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Continuar para denunciar a comunidade" msgid "Continue to report user" msgstr "Continuar para denunciar o usuário" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Continuar com chave de acesso" @@ -9238,11 +9238,6 @@ msgstr "Continuar com chave de acesso" msgid "Continue with SSO" msgstr "Continuar com SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Continuar com sua chave de acesso para entrar em {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Coordena invasões, ataques em massa ou assédio contra pessoas ou comun #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Copiado" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Copiar ID da categoria" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Copiar ID do canal" @@ -9421,12 +9416,12 @@ msgstr "Copiar link do canal" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Copiar código" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Copiar ID da comunidade" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Copiar link de convite" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Copiar mensagem" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Copiar ID da mensagem" @@ -9570,7 +9565,7 @@ msgstr "Copiar ID da mensagem" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Copiar URL da figurinha" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Copie a chave de configuração para o seu aplicativo autenticador." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Copiar ID de usuário" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Copiar nome de usuário" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Não foi possível excluir o aplicativo" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Não foi possível excluir a chave de acesso" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Não foi possível enviar o convite" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Não foi possível enviar o convite. Tente novamente." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Não foi possível alterar a opção de ignorar a supressão de menções" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Não foi possível atualizar a autenticação de dois fatores com chave de acesso" @@ -10206,6 +10201,11 @@ msgstr "Não foi possível atualizar o texto alternativo. Tente novamente." msgid "Couldn't update voice activity sharing right now" msgstr "Não foi possível atualizar o compartilhamento de atividade de voz agora" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Não foi possível atualizar sua chave de acesso. Tente novamente." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Não foi possível enviar o avatar" msgid "Couldn't upload banner" msgstr "Não foi possível enviar o banner" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Não foi possível usar sua chave de acesso na janela pop-up. Tente novamente." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Não foi possível verificar o código. Tente novamente." msgid "Couldn't verify the connection" msgstr "Não foi possível verificar a conexão" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Não foi possível verificar com a chave de acesso. Tente novamente." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Confortável" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Criar" @@ -10298,7 +10293,7 @@ msgstr "Criar um novo grupo com {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Criar aplicativo" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Criar categoria" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Criar canal" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Criar comunidade" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Texto de aviso personalizado" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Personalizado…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Depurar" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Depurar canal" @@ -11164,7 +11159,7 @@ msgstr "Depurar mensagem" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Depurar usuário" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Excluir {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Excluir conta" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Excluir aplicativo" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Excluir anexo" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Excluir mídia" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Excluir mensagem" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Excluir mensagens de outros membros. O gerenciamento de fixação é separado." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Excluir chave de acesso" @@ -11701,7 +11696,7 @@ msgstr "Descreva sobre o que é sua comunidade" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Descrição" @@ -11966,7 +11961,7 @@ msgstr "Dispositivo:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Entrada direta" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Mensagem direta" @@ -12050,7 +12045,7 @@ msgstr "Prévias de mensagens diretas" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Mensagens diretas" @@ -12077,14 +12072,14 @@ msgstr "Envio direto ativo" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Desativar" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Desativar conta" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Desconectado" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Comunidade listada em Descobrir" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Discriminador" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Dispensar" @@ -12477,7 +12472,7 @@ msgstr "Configurações de mensagens diretas e pedidos de amizade" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Conversa por mensagem direta fechada" @@ -12607,7 +12602,7 @@ msgstr "Não bloqueia. Você pode reabrir depois." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domínio" @@ -12697,7 +12692,7 @@ msgstr "Clique duas vezes em alguém para assistir à transmissão." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Holandês" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "ex: YubiKey, iPhone, computador do trabalho" @@ -13092,7 +13087,7 @@ msgstr "Edite as configurações globais, como nome, descrição e ícone." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Editar grupo" @@ -13123,7 +13118,7 @@ msgstr "Editar mídia" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Editar mensagem" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Você pode solicitar um reembolso até {windowEndsOn}. Isso também cancelará sua assinatura imediatamente." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-mail" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji atualizado" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojis" @@ -13525,7 +13520,7 @@ msgstr "Favoritos vazios" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Ativar" @@ -13680,7 +13675,7 @@ msgstr "Ativar notificações push no celular" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Ativar notificações" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Ative as integrações cujas credenciais você configurou. Somente serviços disponíveis são exibidos." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Ativar autenticação de dois fatores" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Inglês (EUA)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Aprimorado" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Insira o novo e-mail" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Insira um dos seus códigos de recuperação se não conseguir usar sua chave de acesso." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Insira um dos seus códigos de recuperação." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Digite um texto" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Insira o código de {digitCount} dígitos do seu aplicativo autenticador ou um código de recuperação." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Insira o código antes de continuar." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Insira o código do seu app autenticador." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Digite seu nome" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Digite sua senha." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Expirou em <0>{expiredDate}. As <1/> não estão mais ativas. Você pode assinar novamente a qualquer momento." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Expira em" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Preenchimento automático de expressões" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Categorias do seletor de expressões" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Não foi possível preparar os emojis" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Não foi possível processar a imagem recortada. Tente novamente." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Falha ao iniciar o SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Não foi possível trocar de conta" @@ -15053,7 +15048,7 @@ msgstr "Favoritos" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favoritos" @@ -15268,6 +15263,11 @@ msgstr "Concluir configuração da conta" msgid "Finish account setup first" msgstr "Conclua a configuração da conta primeiro" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Conclua na nova aba. Se você a fechou, pressione \"Continuar com chave de acesso\" novamente." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Nome da pasta" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Configurações da pasta" @@ -15479,7 +15479,7 @@ msgstr "Para mim" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Para esta verificação, você nos envia uma mensagem de texto em vez de receber uma nossa." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Para sua segurança, confirme que é você para continuar." @@ -15606,7 +15606,7 @@ msgstr "Esqueceu a senha" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Esqueceu a senha?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Apenas amigos e comunidades pequenas" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Amigos de amigos" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Geral" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Alemanha" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Obter {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URLs de GIFs" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIFs" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Atalho global" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Voltar" @@ -16374,6 +16374,11 @@ msgstr "Voltar" msgid "Go back and enter a valid email." msgstr "Volte e insira um e-mail válido." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Volte ao {productName} para continuar." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Ocultar notas de rodapé de validade" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Ocultar favoritos" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Ocultar conversas silenciadas" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Ocultar canais silenciados" @@ -17358,7 +17363,7 @@ msgstr "Identidade" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inativo" @@ -17818,7 +17823,7 @@ msgstr "Perfil impróprio" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Caixa de entrada" @@ -17867,7 +17872,7 @@ msgstr "Inclua o ID da comunidade." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Prévia da página de convite" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Convidar pessoas" @@ -18456,7 +18461,7 @@ msgstr "Quem convidou:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Convites" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Entrar na chamada" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Entrar na comunidade" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Entrou no {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Ir para" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Expulsar um membro desta comunidade." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Expulsar membro" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Sair da chamada" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Sair da comunidade" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Criador de links" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Link copiado para a área de transferência" @@ -19859,8 +19864,8 @@ msgstr "Malware ou links perigosos" msgid "Malware, credential theft, or harmful files." msgstr "Malware, roubo de credenciais ou arquivos prejudiciais." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Gerenciar" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Gerenciar contas" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Gerenciar aplicativos e dispositivos com acesso à sua conta" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Marcar todos os canais não lidos da caixa de entrada como lidos imediatamente, sem pedir confirmação" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Marcar como lida" @@ -20021,7 +20026,7 @@ msgstr "Marcar como spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Marcar como não lida" @@ -20169,7 +20174,7 @@ msgstr "Comunidade adulta" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Conteúdo adulto" @@ -20315,7 +20320,7 @@ msgstr "Medindo…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "membros" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Membros" @@ -20616,7 +20621,7 @@ msgstr "Mencionar este cargo?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Menções" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Mais ações de mídia" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Mais opções" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Silenciar chamadas" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Silenciar categoria" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Silenciar comunidades" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Silenciar comunidade" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Silenciar som de entrada" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Silenciar favoritos" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "O nome deve ter pelo menos 2 caracteres" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Nomear chave de acesso" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formulário de nome da chave de acesso" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Precisa de uma conta?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Nunca" @@ -22276,7 +22281,7 @@ msgstr "Mais recentes primeiro" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Próximo" @@ -22905,7 +22910,7 @@ msgstr "Nenhum usuário encontrado" msgid "No verification is required." msgstr "Nenhuma verificação é necessária." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Nenhum método de verificação disponível" @@ -23038,11 +23043,13 @@ msgstr "Página não encontrada" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Agora não" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Nota (visível só para você)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Nada" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Substituições de notificação" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Configurações de notificação" @@ -23152,7 +23159,7 @@ msgstr "Volume de notificações" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Desativado" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Ok" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Apenas membros com a permissão \"{manageCommunityPermissionLabel}\" podem mudar isso." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Apenas menções" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Abrir {labelText} nas configurações" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Abrir {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Mensagens diretas abertas" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Abrir conversa" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Abrir fatura {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Abrir link" @@ -23850,7 +23857,7 @@ msgstr "Abrir navegação rápida" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Abrir configurações" @@ -23935,11 +23942,6 @@ msgstr "Abrir estúdio de temas em janela separada" msgid "Open theme studio…" msgstr "Abrir estúdio de temas…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Abra esta janela pelo {productName} para usar sua chave de acesso." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Opções" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Chave de acesso" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Nome da chave de acesso" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Chave de acesso atualizada" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Chaves de acesso" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "As chaves de acesso exigem um pacote macOS assinado com um identificador de aplicativo válido. Instale o cliente de desktop assinado e tente novamente." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Senha" msgid "Password changed" msgstr "Senha alterada" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Gerenciadores de senhas podem não oferecer sua chave de acesso neste endereço da web. Em vez disso, tente em uma janela pop-up no endereço antigo." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Cole o link da mensagem." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Dicionário pessoal" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Notas pessoais" @@ -24885,7 +24887,7 @@ msgstr "Fixar conversa em grupo" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Fixar mensagem" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "fixada" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Conversa por mensagem direta fixada" @@ -25020,7 +25022,7 @@ msgstr "Administrador da plataforma" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Reproduzir" @@ -25318,6 +25320,11 @@ msgstr "Pressione uma tecla, botão do mouse ou botão do gamepad para vincular. msgid "Press a shortcut…" msgstr "Pressione um atalho…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Pressione \"Continuar\" para usar sua chave de acesso." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Idioma principal" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Navegação principal" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Política de privacidade" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Configurações de privacidade" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Dica:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Continuar" @@ -26090,7 +26097,7 @@ msgstr "Reagir com {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Gerar um novo token invalidará o atual. Atualize qualquer código que use o valor antigo." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Cadastrar" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Chaves de acesso registradas" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Remover banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Remover das mensagens salvas" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Remover do dicionário" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Remover dos favoritos" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Removido dos GIFs favoritos" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Removido dos favoritos" @@ -27032,7 +27039,7 @@ msgstr "Remover permissões pode limitar os recursos do bot." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Remover a suspensão temporária permitirá que <0>{targetUserTag} envie mensagens, reaja e participe de canais de voz novamente." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Renomear" @@ -27119,7 +27126,7 @@ msgstr "Respostas" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Responder" @@ -27209,7 +27216,7 @@ msgstr "Reportar problema" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Denunciar mensagem" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Exigir 2FA para ações de moderação" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Exigir uma chave de acesso como segundo fator" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Link de redefinição inválido ou expirado" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Redefinir o estado de consentimento para conteúdo adulto" @@ -27880,7 +27887,7 @@ msgstr "Pesquisa de imagem reversa" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Pesquisa de imagem reversa" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Revisar e confirmar" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Analise os aplicativos que podem acessar sua conta." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Ver compras anteriores e opções de reembolso" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Confira os dispositivos conectados e encerre as sessões que você não reconhece." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Cargo atualizado" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Cargos" @@ -28261,7 +28268,7 @@ msgstr "Saturação" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Escopo" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Permissões" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Leitor de tela" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Pesquisar canais, pessoas ou comunidades" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Pesquisar amigos" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Pesquisar texto selecionado" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Pesquisar configurações" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Pesquisar configurações…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Segurança" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Recursos de segurança" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Chave de segurança" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Chave de segurança / chave de acesso" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Mídia sensível" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Enviado" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Sessão" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "A sessão de {identifier} expirou. Faça login novamente." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Define o nível para todos os efeitos sonoros. As configurações individuais de cada som ignoram esta opção." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Configurações abertas." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Seções de configurações" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Barra lateral" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Entrar" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Faça login para resgatar seu presente" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Entrar pelo navegador" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Entrar com uma chave de acesso" @@ -30666,7 +30673,7 @@ msgstr "Entrar com o provedor de logon único da sua organização." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Sair" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Detalhes de login" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Fluxo de login" @@ -31189,7 +31196,7 @@ msgstr "Alguns usuários não podem ser adicionados" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Algo deu errado" @@ -31374,7 +31381,7 @@ msgstr "Volume do som" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Sons" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Comece a enviar os anexos assim que eles forem adicionados à caixa de mensagem" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Iniciar chamada de vídeo" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Iniciar chamada de voz" @@ -31899,7 +31906,7 @@ msgstr "figurinha" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Figurinha: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Figurinhas" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Parar de confiar em todos os links?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Parar de usar chaves de acesso para autenticação de dois fatores?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Silenciar todas as menções de cargo" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Ocultar conteúdos incorporados" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "canal de texto" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Canal de texto" @@ -33055,7 +33062,7 @@ msgstr "Envie-nos uma mensagem do seu telefone" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Texto para fala" @@ -33119,6 +33126,11 @@ msgstr "A ação não foi concluída. Você pode já ter saído de algumas comun msgid "That did not go through. Nothing changed. Try again." msgstr "Não foi possível. Nada mudou. Tente novamente." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Não funcionou. Tente novamente ou cancele." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Essa cor não parece válida. Tente usar hexadecimal, rgb(), hsl() ou um nome de cor CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Essa imagem não pôde ser usada. Tente um arquivo diferente." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Esta imagem é inválida. Tente outra." @@ -34035,11 +34047,11 @@ msgstr "Esta é a descrição da segunda opção" msgid "This is the third option description" msgstr "Esta é a descrição da terceira opção" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Esta é sua última chave de acesso, e as chaves de acesso são seu segundo fator. Excluí-la desativará a autenticação de dois fatores da sua conta, e seus códigos de recuperação atuais deixarão de funcionar." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Esta é sua última chave de acesso. Depois que ela for removida, você não poderá mais usar uma chave de acesso como seu segundo fator." @@ -34154,16 +34166,6 @@ msgstr "Este participante está com o áudio desativado" msgid "This participant was deafened by moderators" msgstr "Os moderadores desativaram o áudio deste participante" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Esta solicitação de chave de acesso não pôde ser verificada. Feche esta janela e tente novamente." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Esta solicitação de chave de acesso expirou. Feche esta janela e tente novamente." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Isso remove todos os domínios confiáveis. Você verá o aviso de link msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Isso remove todos os atalhos personalizados e reativa todos os atalhos integrados. Esta ação não pode ser desfeita." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Esta solicitação expirou. Volte e tente novamente." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Este link de redefinição expirou. Links de redefinição duram 1 hora. Por favor, solicite um novo." @@ -34807,7 +34814,7 @@ msgstr "Transferir a propriedade do grupo para {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Transferir a propriedade" @@ -34823,7 +34830,7 @@ msgstr "Propriedade transferida para {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Traduzir" @@ -34980,7 +34987,7 @@ msgstr "Tente um nome de variável diferente ou limpe a busca." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Tentar novamente" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Tentar novamente" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Tente novamente em alguns instantes." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Tente pesquisar por algo como \"tema\", \"notificações\" ou \"privacidade\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Tentar uma chave de segurança ou chave de acesso" @@ -35088,7 +35095,7 @@ msgstr "Turco" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Desativar" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Desative o compartilhamento de áudio desta fonte ou tente novamente em alguns instantes." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Desligar câmera" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Desative a privacidade de transmissão antes de ver os detalhes de login ou segurança da conta." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Ativar" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Autenticação de dois fatores" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Autenticação de dois fatores" @@ -35288,7 +35295,7 @@ msgstr "Autenticação de dois fatores desativada" msgid "Two-factor authentication enabled" msgstr "Autenticação de dois fatores ativada" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Autenticação de dois fatores ativada" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Desbloquear usuário" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Não categorizado" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Sublinhar links de sites" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Entendi" @@ -35643,7 +35650,7 @@ msgstr "Alternativa universal. Qualidade mais baixa, mas funciona em qualquer lu #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Reativar microfones em todos os dispositivos" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Reativar notificações da categoria" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Reativar notificações das comunidades" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Reativar notificações da comunidade" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Reativar notificações das mensagens diretas" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Reativar notificações dos favoritos" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Desafixar" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Desafixar mensagem" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Desafixar esta mensagem?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Conversa direta desafixada" @@ -36193,6 +36200,11 @@ msgstr "Atualizar e-mail" msgid "Update my status" msgstr "Atualizar meu status" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Atualizar chave de acesso" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Atualizar suspensão temporária" msgid "Update your own nickname." msgstr "Atualize seu próprio apelido." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Atualize sua chave de acesso" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Use uma janela específica para definir a data de corte do histórico de msgid "Use a different email address and verify it with a code." msgstr "Use um endereço de e-mail diferente e verifique-o com um código." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Usar uma chave de acesso do gerenciador de senhas" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Usar valor real" msgid "Use alternative method" msgstr "Usar outro método" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Use um app autenticador para gerar códigos para a autenticação de dois fatores" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Use somente se violar claramente as regras do {productName} e não se encaixar nas opções acima." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Usar chaves de acesso para autenticação de dois fatores?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Use chaves de acesso para entrar sem senha" @@ -36824,8 +36836,8 @@ msgstr "Usar atividade de voz" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Use o corretor ortográfico do seu sistema operacional, se disponível. Caso contrário, use os dicionários integrados do {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Use sua chave de acesso" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Controles do usuário" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Depurar usuário" @@ -36972,7 +36984,7 @@ msgstr "Volume do usuário" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verificação cancelada" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Código de verificação" @@ -37185,7 +37197,7 @@ msgstr "E-mail de verificação enviado. Verifique sua caixa de entrada." msgid "Verification expired" msgstr "Verificação expirou" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Comunidade verificada" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verificar" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Verificar conexão" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Verificar e-mail" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formulário de verificação de identidade" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Verifique sua identidade" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Verifique seu e-mail para enviar pedidos de amizade." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Verifique seu e-mail antes de adicionar uma chave de acesso." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Verifique seu e-mail antes de adicionar um aplicativo autenticador." @@ -37571,7 +37583,7 @@ msgstr "Ver e gerenciar usuários banidos." msgid "View and manage every webhook configured across your community." msgstr "Veja e gerencie todos os webhooks configurados na sua comunidade." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Ver e gerenciar seus códigos de recuperação da conta" @@ -37605,7 +37617,7 @@ msgstr "Ver canal" msgid "View channel members" msgstr "Ver membros do canal" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Ver códigos" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Ver planos" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Ver perfil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "canal de voz" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Canal de voz" @@ -38073,7 +38085,7 @@ msgstr "Anulado" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Aguarde" msgid "Waiting for connection..." msgstr "Aguardando conexão..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Aguardando a chave de acesso…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Assistir" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Assistir à transmissão" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Pré-visualizações de sites" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Boas-vindas de volta" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Você não faz parte de nenhuma comunidade no momento." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Você bloqueou {userName}. Desbloqueie essa pessoa para enviar mensagens." @@ -39101,6 +39113,11 @@ msgstr "Você pode cancelar o processo de exclusão em até 14 dias" msgid "You can close this modal. The import will continue in the background." msgstr "Você pode fechar esta janela. A importação continuará em segundo plano." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Você pode fechar esta aba" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Você já pode fechar esta aba e voltar para o app." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Você não pode enviar um pedido de amizade para si mesmo." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Você não pode enviar mensagens neste canal." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Você ainda precisará concluir a etapa do e-mail." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Você não precisará mais de uma chave de acesso após sua senha. Seu app autenticador continuará sendo seu segundo fator." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Você terá que entrar novamente em todos os dispositivos desconectados" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Você precisará de uma de suas chaves de acesso para fazer login em um novo dispositivo. Se você perder todas as suas chaves de acesso, poderá perder o acesso à sua conta definitivamente. Salvaremos códigos de recuperação para que você ainda tenha uma forma de entrar." @@ -39918,12 +39935,12 @@ msgstr "Sua conta é muito nova para enviar mensagens nesta comunidade." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Sua solicitação de conta está aguardando aprovação. Você poderá entrar depois que um administrador aprová-la." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Sua conta exige autenticação multifator, mas nenhum método compatível está configurado neste dispositivo. Faça login em um dispositivo com seu aplicativo autenticador ou chave de segurança, ou entre em contato com o suporte." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Sua conta não estará mais protegida pela autenticação de dois fatores ao fazer login com sua senha. Você também perderá permissões elevadas em comunidades que exigem autenticação de dois fatores." @@ -39941,16 +39958,6 @@ msgstr "Não foi possível concluir sua ação porque ela foi sinalizada pelos n msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Sua inscrição está aguardando análise. Você ainda pode atualizar os detalhes da página da comunidade ou retirar a inscrição." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Seu navegador bloqueou a janela pop-up da chave de acesso. Permita pop-ups para este site e tente novamente." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Seu navegador não oferece suporte a chaves de acesso neste domínio. Atualize seu navegador ou faça login com sua senha e código de dois fatores." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Sua comunidade precisa de pelo menos {minMemberCount, plural, one {# mem msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Seu cartão de crédito foi verificado. Se o cartão for válido, o conteúdo adulto será desbloqueado em breve. Você pode fechar esta aba e voltar para o aplicativo." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Seu dispositivo pedirá para salvar uma chave de acesso atualizada para {name}. Ela substitui a antiga." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Seu dispositivo pedirá para salvar uma chave de acesso atualizada para {name}. Use o mesmo telefone ou chave de segurança que você acabou de usar." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Mais zoom" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/ro/messages.po b/fluxer_app/src/features/i18n/locales/ro/messages.po index cdf5c3d0f..9ab980aba 100644 --- a/fluxer_app/src/features/i18n/locales/ro/messages.po +++ b/fluxer_app/src/features/i18n/locales/ro/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {membru} few {membri} other {de membri}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# mențiune} few {# mențiuni} other {# de mențiuni}}" @@ -2370,8 +2370,8 @@ msgstr "6 luni" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "Cod de 6 cifre" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Suprascrieri cont și premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Acces la cont" @@ -2807,7 +2807,7 @@ msgstr "Abonat lunar activ (anulare programată)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Adaugă un cont pentru a continua." msgid "Add an email and password to your account first." msgstr "Adaugă mai întâi o adresă de e-mail și o parolă la contul tău." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Adaugă un nivel suplimentar de securitate pentru contul tău" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Adaugă botul la o destinație" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Adaugă canal" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Adaugă reacții noi la mesaje." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Adaugă notă" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Adaugă suprascriere" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Adaugă o cheie de acces" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Adaugă o reacție" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Adaugă în dicționar" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Adaugă la favorite" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Adăugat la GIF-uri favorite" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Adăugat la favorite" @@ -3296,11 +3296,11 @@ msgstr "Adăugat la favorite" msgid "Added to saved media" msgstr "Adăugat la media salvată" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Adăugat: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Adăugat: {createdDate} • ultima utilizare: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Toate limbile" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Toate mesajele" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Deja șters" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Ai deja un cont?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Zoom aplicație" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Nivel de zoom al aplicației" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Aprobă" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Aprobă această aplicație din aplicația {productName} pe care o folosești deja. Nu este necesară parola." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Sigur dorești să ștergi categoria „{categoryName}”? Această acțiune nu poate fi anulată." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Sigur dorești să ștergi cheia de acces <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Sigur dorești să ștergi acest atașament? Această acțiune nu poate msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Sigur dorești să ștergi această comunitate? Această acțiune nu poate fi anulată. Toate canalele, mesajele și setările vor fi șterse definitiv." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Sigur dorești să ștergi această cheie de acces?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Solicită confirmare înainte de a iniția apeluri" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Solicită o cheie de acces după parolă atunci când te conectezi" @@ -4690,7 +4690,7 @@ msgstr "Atașamente" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Audio" @@ -4851,14 +4851,14 @@ msgstr "Autentificare" msgid "Authenticator" msgstr "Autentificator" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Aplicație de autentificare" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Cod de autentificare" @@ -4928,7 +4928,7 @@ msgstr "Aplicații autorizate" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Plecat acum" msgid "Back" msgstr "Înapoi" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Înapoi la {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Înapoi la roluri" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Înapoi la setări" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Înapoi la autentificare" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Cod de rezervă" @@ -5351,7 +5356,7 @@ msgstr "Cod de rezervă" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Limită de mesaje salvate atinsă" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Apeluri" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Cameră oprită" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Cameră pornită" @@ -6364,9 +6369,9 @@ msgstr "Nu se pot încărca fișiere aici" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Nu se pot încărca fișiere aici" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Schimbă emoji-ul" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Schimbă pseudonimul prietenului" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Schimbă-mi pseudonimul în grup" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Schimbă pseudonimul" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Acțiuni canal" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Canal adăugat la favorite" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Canal creat" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Depanare canal" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Canal șters" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Înregistrare canal" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Canal eliminat din favorite" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Alege culoarea de accent a profilului tău" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Revendică contul" @@ -7715,7 +7720,7 @@ msgstr "Revendică-ți contul și verifică-ți e-mailul pentru a trimite rapoar msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Revendică-ți contul adăugând o adresă de e-mail și o parolă. Îți vom trimite un cod de verificare pentru a-ți confirma e-mailul înainte de finalizare." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Revendică-ți contul pentru a accesa funcții de securitate precum autentificarea în doi pași și cheile de acces." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Ștergi CSS-ul rapid?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Șterge căutarea" @@ -8103,7 +8108,7 @@ msgstr "Clonarea este dezactivată" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Închide" @@ -8160,11 +8165,9 @@ msgstr "Închide în bara de meniu" msgid "Close to tray" msgstr "Închide în bara de sistem" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Închide fereastra" @@ -8456,7 +8459,7 @@ msgstr "Comunicare" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Depanare comunitate" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Implicit pentru comunitate" @@ -8577,7 +8580,7 @@ msgstr "Înregistrare membru comunitate" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Membrii comunității" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Nivelul de notificare pentru comunitate" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Setări notificări comunitate" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Comparație" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Finalizează verificarea conținutului matur" @@ -9093,7 +9096,7 @@ msgstr "Conexiune: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Meniurile contextuale pot fi deschise cu clic stânga (pe butoane) sau c #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Continuă" msgid "Continue to checkout" msgstr "Continuă la plată" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Continuă crearea unei chei de acces pentru {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Continuă cu raportarea comunității" msgid "Continue to report user" msgstr "Continuă cu raportarea utilizatorului" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Continuă cu cheia de acces" @@ -9238,11 +9238,6 @@ msgstr "Continuă cu cheia de acces" msgid "Continue with SSO" msgstr "Continuă cu SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Continuă cu cheia ta de acces pentru a te conecta la {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Coordonează raiduri, atacuri în grup sau hărțuire împotriva unor pe #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Copiat" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Copiază ID-ul categoriei" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Copiază ID-ul canalului" @@ -9421,12 +9416,12 @@ msgstr "Copiază linkul canalului" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Copiază codul" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Copiază ID-ul comunității" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Copiază URL-ul invitației" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Copiază mesajul" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Copiază ID-ul mesajului" @@ -9570,7 +9565,7 @@ msgstr "Copiază ID-ul mesajului" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Copiază URL-ul stickerului" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Copiază cheia de configurare în aplicația ta de autentificare." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Copiază ID-ul utilizatorului" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Copiază numele de utilizator" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Nu s-a putut șterge aplicația" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Nu s-a putut șterge cheia de acces" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Nu s-a putut trimite invitația" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Nu s-a putut trimite invitația. Încearcă din nou." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Nu s-a putut actualiza ocolirea suprimării mențiunilor" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Nu s-a putut actualiza autentificarea în doi pași cu cheie de acces" @@ -10206,6 +10201,11 @@ msgstr "Nu s-a putut actualiza textul alternativ. Încearcă din nou." msgid "Couldn't update voice activity sharing right now" msgstr "Nu s-a putut actualiza acum partajarea activității vocale" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Nu s-a putut actualiza cheia de acces. Încearcă din nou." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Nu s-a putut încărca avatarul" msgid "Couldn't upload banner" msgstr "Nu s-a putut încărca bannerul" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Nu am putut folosi cheia de acces în fereastra pop-up. Încearcă din nou." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Nu s-a putut verifica codul. Încearcă din nou." msgid "Couldn't verify the connection" msgstr "Nu s-a putut verifica conexiunea" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Verificarea cu cheia de acces nu a reușit. Încearcă din nou." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Confortabil" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Creează" @@ -10298,7 +10293,7 @@ msgstr "Creează un grup nou cu {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Creează aplicație" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Creează categorie" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Creează canal" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Creează o comunitate" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Text de avertizare personalizat" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Personalizat…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Depanare" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Depanare canal" @@ -11164,7 +11159,7 @@ msgstr "Depanare mesaj" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Depanare utilizator" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Șterge {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Șterge contul" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Șterge aplicația" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Șterge atașamentul" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Șterge media" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Șterge mesajul" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Șterge mesajele altor membri. Fixarea este controlată separat." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Șterge cheia de acces" @@ -11701,7 +11696,7 @@ msgstr "Descrie despre ce este vorba în comunitatea ta" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Descriere" @@ -11966,7 +11961,7 @@ msgstr "Dispozitiv:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Intrare directă" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Mesaj direct" @@ -12050,7 +12045,7 @@ msgstr "Previzualizări mesaje directe" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Mesaje directe" @@ -12077,14 +12072,14 @@ msgstr "Încărcare directă activă" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Dezactivează" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Dezactivează contul" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Deconectat" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Comunitate listată în Discovery" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Discriminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Închide" @@ -12477,7 +12472,7 @@ msgstr "Setări DM și cereri de prietenie" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM închis" @@ -12607,7 +12602,7 @@ msgstr "Nu blochează. Poți redeschide mai târziu." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domeniu" @@ -12697,7 +12692,7 @@ msgstr "Fă dublu clic pe cineva pentru a-i urmări transmisiunea." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Olandeză" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "de ex.: YubiKey, iPhone, computer de serviciu" @@ -13092,7 +13087,7 @@ msgstr "Editează setările globale, cum ar fi numele, descrierea și pictograma #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Editează grupul" @@ -13123,7 +13118,7 @@ msgstr "Editează media" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Editează mesajul" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Eligibil pentru o rambursare până la {windowEndsOn}. Aceasta îți va anula imediat și abonamentul." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-mail" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji actualizat" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emoji" @@ -13525,7 +13520,7 @@ msgstr "Listă de favorite goală" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Activează" @@ -13680,7 +13675,7 @@ msgstr "Activează notificările push pe mobil" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Activează notificările" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Activează integrările pentru care ai configurat credențialele. Sunt afișate doar serviciile disponibile." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Activează autentificarea în doi pași" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Engleză (SUA)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Îmbunătățit" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Introdu o adresă de e-mail nouă" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Introdu unul dintre codurile tale de rezervă dacă nu poți folosi cheia de acces." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Introdu unul dintre codurile tale de rezervă." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Introdu text" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Introdu codul de {digitCount} cifre din aplicația de autentificare sau un cod de rezervă." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Introdu codul înainte de a continua." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Introdu codul din aplicația de autentificare." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Introdu-ți numele" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Introdu parola." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "A expirat la <0>{expiredDate}. <1/> nu mai sunt active. Te poți reabona oricând." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Expiră" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Completare automată expresii" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Categorii de expresii" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Nu s-au putut pregăti emoji-urile" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Procesarea imaginii decupate a eșuat. Încearcă din nou." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Nu s-a putut iniția autentificarea SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Nu s-a putut schimba contul" @@ -15053,7 +15048,7 @@ msgstr "Favorite" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favorite" @@ -15268,6 +15263,11 @@ msgstr "Finalizează configurarea contului" msgid "Finish account setup first" msgstr "Finalizează mai întâi configurarea contului" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Finalizează în fila nouă. Dacă ai închis-o, apasă din nou pe „Continuă cu cheia de acces”." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Numele dosarului" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Setări dosar" @@ -15479,7 +15479,7 @@ msgstr "Pentru mine" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Pentru această verificare, ne trimiți un mesaj text în loc să primești unul de la noi." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Pentru siguranța ta, te rugăm să confirmi că ești tu pentru a continua." @@ -15606,7 +15606,7 @@ msgstr "Am uitat parola" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Ai uitat parola?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Doar prietenii și comunitățile mici" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Prieteni ai prietenilor" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "General" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Germania" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Obține {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "Adrese URL GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF-uri" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Comandă rapidă globală" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Înapoi" @@ -16374,6 +16374,11 @@ msgstr "Înapoi" msgid "Go back and enter a valid email." msgstr "Întoarce-te și introdu o adresă de e-mail validă." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Revino la {productName} pentru a continua." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Ascunde notele de subsol privind expirarea" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Ascunde favoritele" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Ascunde pe silențios" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Ascunde canalele puse pe silențios" @@ -17358,7 +17363,7 @@ msgstr "Identitate" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inactiv" @@ -17818,7 +17823,7 @@ msgstr "Profil neadecvat" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Mesaje primite" @@ -17867,7 +17872,7 @@ msgstr "Include ID-ul comunității." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Previzualizare pagină de invitație" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Invită persoane" @@ -18456,7 +18461,7 @@ msgstr "Invitat de:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Invitații" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Alătură-te apelului" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Alătură-te comunității" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Înscris pe {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Salt" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Elimină un membru din această comunitate." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Elimină membrul" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Părăsește apelul" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Părăsește comunitatea" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Constructor de linkuri" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Link copiat în clipboard" @@ -19859,8 +19864,8 @@ msgstr "Malware sau linkuri periculoase" msgid "Malware, credential theft, or harmful files." msgstr "Programe malware, furt de date de conectare sau fișiere dăunătoare." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Gestionează" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Gestionează conturile" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Gestionează aplicațiile și dispozitivele care au acces la contul tău" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Marchează imediat toate canalele necitite din inbox ca fiind citite, fără a cere confirmare" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Marchează ca citit" @@ -20021,7 +20026,7 @@ msgstr "Marchează ca spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Marchează ca necitit" @@ -20169,7 +20174,7 @@ msgstr "Comunitate pentru adulți" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Conținut matur" @@ -20315,7 +20320,7 @@ msgstr "Se măsoară…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "membri" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Membri" @@ -20616,7 +20621,7 @@ msgstr "Menționezi acest rol?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Mențiuni" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Mai multe acțiuni media" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Mai multe opțiuni" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Dezactivează sunetul apelurilor" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Pune categoria pe silențios" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Pune comunitățile pe silențios" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Pune comunitatea pe silențios" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Dezactivează sunetul de intrare" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Pune favoritele pe silențios" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Numele trebuie să aibă cel puțin 2 caractere" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Denumește cheia de acces" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formular de denumire a cheii de acces" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Ai nevoie de un cont?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Niciodată" @@ -22276,7 +22281,7 @@ msgstr "Cele mai noi mai întâi" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Înainte" @@ -22905,7 +22910,7 @@ msgstr "Nu s-au găsit utilizatori" msgid "No verification is required." msgstr "Nu este necesară verificarea." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Nicio metodă de verificare disponibilă" @@ -23038,11 +23043,13 @@ msgstr "Pagina nu a fost găsită" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Nu acum" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Notă (vizibilă doar pentru tine)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Nimic" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Suprascrieri notificări" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Setări notificări" @@ -23152,7 +23159,7 @@ msgstr "Volum notificări" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Dezactivat" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Deconectat" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "OK" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Conectat" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Doar membrii cu permisiunea „{manageCommunityPermissionLabel}” pot schimba asta." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Doar mențiunile" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Deschide {labelText} în setări" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Deschide {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Mesaje directe deschise" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Deschide DM-ul" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Deschide factura {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Deschide linkul" @@ -23850,7 +23857,7 @@ msgstr "Deschide comutatorul rapid" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Deschide setările" @@ -23935,11 +23942,6 @@ msgstr "Deschide fereastra pop-out a studioului de teme" msgid "Open theme studio…" msgstr "Deschide studioul de teme…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Deschide această fereastră din {productName} pentru a folosi cheia de acces." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Opțiuni" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Cheie de acces" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Numele cheii de acces" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Cheie de acces actualizată" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Chei de acces" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Cheile de acces necesită un pachet macOS semnat, cu un identificator de aplicație valid. Instalează clientul desktop semnat și încearcă din nou." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Parolă" msgid "Password changed" msgstr "Parola a fost schimbată" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Managerii de parole s-ar putea să nu ofere cheia de acces pe această adresă web. Încearc-o în schimb într-o fereastră pop-up pe vechea adresă." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Lipește linkul mesajului." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Dicționar personal" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Note personale" @@ -24885,7 +24887,7 @@ msgstr "Fixează DM-ul de grup" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Fixare mesaj" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "fixat" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "DM fixat" @@ -25020,7 +25022,7 @@ msgstr "Administrator platformă" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Redă" @@ -25318,6 +25320,11 @@ msgstr "Apasă o tastă, un buton de mouse sau un buton de gamepad pentru a asoc msgid "Press a shortcut…" msgstr "Apasă o scurtătură…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Apasă pe „Continuă” pentru a folosi cheia de acces." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Limba principală" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Navigare principală" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Politica de confidențialitate" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Setări de confidențialitate" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Sfat util:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Continuă" @@ -26090,7 +26097,7 @@ msgstr "Reacționează cu {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Regenerarea va invalida tokenul curent. Actualizează orice cod care folosește valoarea veche." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Înregistrare" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Chei de acces înregistrate" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Elimină bannerul" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Elimină din mesaje salvate" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Elimină din dicționar" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Elimină din favorite" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Eliminat din GIF-uri favorite" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Eliminat din favorite" @@ -27032,7 +27039,7 @@ msgstr "Eliminarea permisiunilor ar putea limita funcțiile botului." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Dacă elimini timeoutul, <0>{targetUserTag} va putea din nou să trimită mesaje, să reacționeze și să se alăture canalelor vocale." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Redenumește" @@ -27119,7 +27126,7 @@ msgstr "Răspunsuri" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Răspunde" @@ -27209,7 +27216,7 @@ msgstr "Raportează o problemă" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Raportează mesajul" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Solicită 2FA pentru acțiunile de moderare" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Necesită o cheie de acces ca al doilea factor" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Linkul de resetare este invalid sau a expirat" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Resetează starea acordului privind conținutul matur" @@ -27880,7 +27887,7 @@ msgstr "Căutare inversă" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Căutare inversă a imaginii" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Revizuiește și confirmă" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Revizuiește aplicațiile care pot accesa contul tău." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Revizuiește achizițiile anterioare și opțiunile de rambursare" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Revizuiește dispozitivele conectate și deconectează sesiunile pe care nu le recunoști." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rol actualizat" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Roluri" @@ -28261,7 +28268,7 @@ msgstr "Saturație" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Domeniu" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Domenii" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Cititor de ecran" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Caută canale, persoane sau comunități" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Caută prieteni" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Caută textul selectat" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Caută în setări" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Caută în setări…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Securitate" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Funcții de securitate" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Cheie de securitate" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Cheie de securitate / cheie de acces" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Media sensibilă" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Trimis" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Sesiune" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Sesiunea a expirat pentru {identifier}. Conectează-te din nou." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Setează nivelul pentru fiecare efect sonor. Suprascrierile individuale ale sunetelor ignoră această setare." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Setări deschise." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Secțiuni de setări" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Bară laterală" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Conectează-te" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Conectează-te pentru a-ți revendica cadoul" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Conectează-te prin browser" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Conectează-te cu o cheie de acces" @@ -30666,7 +30673,7 @@ msgstr "Conectează-te cu furnizorul de autentificare unică al organizației ta #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Deconectare" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Detalii de conectare" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Flux de conectare" @@ -31189,7 +31196,7 @@ msgstr "Unii utilizatori nu pot fi adăugați" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Ceva nu a mers bine" @@ -31374,7 +31381,7 @@ msgstr "Volum sunet" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Sunete" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Începe încărcarea atașamentelor imediat ce sunt adăugate în câmpul de mesaj" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Inițiază apel video" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Inițiază apel vocal" @@ -31899,7 +31906,7 @@ msgstr "sticker" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Sticker: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Stickere" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Nu mai ai încredere în toate linkurile?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Nu mai folosești chei de acces pentru autentificarea în doi pași?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Suprimă toate mențiunile de rol" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Suprimă încorporările" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "canal text" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Canal text" @@ -33055,7 +33062,7 @@ msgstr "Trimite-ne un mesaj de pe telefonul tău" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Text în vorbire" @@ -33119,6 +33126,11 @@ msgstr "Nu s-a finalizat. Este posibil ca unele comunități să fi fost deja p msgid "That did not go through. Nothing changed. Try again." msgstr "Nu a funcționat. Nu s-a schimbat nimic. Încearcă din nou." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Nu a funcționat. Încearcă din nou sau anulează." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Nu pare o culoare validă. Încearcă hex, rgb(), hsl() sau un nume de culoare CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Imaginea respectivă nu a putut fi utilizată. Încearcă un alt fișier." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Această imagine este nevalidă. Încearcă alta." @@ -34035,11 +34047,11 @@ msgstr "Aceasta este descrierea celei de-a doua opțiuni" msgid "This is the third option description" msgstr "Aceasta este descrierea celei de-a treia opțiuni" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Aceasta este ultima ta cheie de acces, iar cheile de acces sunt al doilea factor. Ștergerea ei dezactivează autentificarea în doi pași pentru contul tău, iar codurile tale de rezervă actuale vor înceta să mai funcționeze." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Aceasta este ultima ta cheie de acces. Odată ce o ștergi, nu vei mai putea folosi o cheie de acces ca al doilea factor." @@ -34154,16 +34166,6 @@ msgstr "Acest participant are sunetul dezactivat" msgid "This participant was deafened by moderators" msgstr "Acestui participant i-a fost dezactivat sunetul de moderatori" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Această cerere de cheie de acces nu a putut fi verificată. Închide această fereastră și încearcă din nou." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Această cerere de cheie de acces a expirat. Închide această fereastră și încearcă din nou." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Aceasta elimină toate domeniile de încredere. Vei vedea din nou averti msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Aceasta elimină toate scurtăturile personalizate și reactivează toate scurtăturile încorporate. Această acțiune nu poate fi anulată." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Această cerere a expirat. Revino și încearcă din nou." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Acest link de resetare a expirat. Linkurile de resetare sunt valabile 1 oră. Solicită unul nou." @@ -34807,7 +34814,7 @@ msgstr "Transferi proprietatea grupului către {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Transferă proprietatea" @@ -34823,7 +34830,7 @@ msgstr "Proprietate transferată către {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Tradu" @@ -34980,7 +34987,7 @@ msgstr "Încearcă un alt nume de variabilă sau șterge căutarea." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Încearcă din nou" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Încearcă din nou" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Încearcă din nou peste un moment." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Încearcă să cauți ceva de genul „temă”, „notificări” sau „confidențialitate”" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Încearcă în schimb o cheie de securitate / cheie de acces" @@ -35088,7 +35095,7 @@ msgstr "Turcă" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Dezactivează" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Dezactivează partajarea audio pentru această sursă sau încearcă din nou peste o clipă." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Oprește camera" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Dezactivează confidențialitatea streamingului înainte de a vizualiza detaliile de conectare sau de securitate a contului." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Activează" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Autentificare în doi pași" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Autentificare în doi pași" @@ -35288,7 +35295,7 @@ msgstr "Autentificarea în doi pași a fost dezactivată" msgid "Two-factor authentication enabled" msgstr "Autentificarea în doi pași a fost activată" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Autentificarea în doi pași este activată" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Deblochează utilizatorul" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Necategorizat" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Subliniază linkurile către site-uri web" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Am înțeles" @@ -35643,7 +35650,7 @@ msgstr "Soluție universală. Cea mai slabă calitate, dar funcționează peste #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Activează microfonul pe toate dispozitivele" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Scoate categoria de pe silențios" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Scoate comunitățile de pe silențios" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Scoate comunitatea de pe silențios" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Scoate DM-urile de pe silențios" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Scoate favoritele de pe silențios" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Anulează fixarea" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Anulează fixarea mesajului" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Anulezi fixarea acestui mesaj?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Fixarea DM-ului a fost anulată" @@ -36193,6 +36200,11 @@ msgstr "Actualizează adresa de e-mail" msgid "Update my status" msgstr "Actualizează-mi starea" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Actualizează cheia de acces" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Actualizează timeoutul" msgid "Update your own nickname." msgstr "Actualizează-ți propriul pseudonim." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Actualizează-ți cheia de acces" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Folosește o fereastră dedicată pentru a seta o dată limită a istori msgid "Use a different email address and verify it with a code." msgstr "Folosește o altă adresă de e-mail și verific-o cu un cod." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Folosește o cheie de acces de la managerul de parole" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Folosește valoarea reală" msgid "Use alternative method" msgstr "Folosește o metodă alternativă" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Folosește o aplicație de autentificare pentru a genera coduri pentru autentificarea în doi pași" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Folosește doar dacă încalcă în mod clar regulile {productName} și nu se încadrează în categoriile de mai sus." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Folosești chei de acces pentru autentificarea în doi pași?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Folosește chei de acces pentru a te conecta fără parolă" @@ -36824,8 +36836,8 @@ msgstr "Folosește activitatea vocală" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Folosește verificatorul ortografic al sistemului tău de operare, dacă este disponibil. Altfel, folosește dicționarele din aplicație ale {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Folosește cheia de acces" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Comenzi utilizator" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Depanare utilizator" @@ -36972,7 +36984,7 @@ msgstr "Volum utilizator" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verificare anulată" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Cod de verificare" @@ -37185,7 +37197,7 @@ msgstr "E-mailul de verificare a fost trimis. Verifică-ți căsuța de e-mail." msgid "Verification expired" msgstr "Verificarea a expirat" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Comunitate verificată" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verifică" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Verifică conexiunea" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Verifică adresa de e-mail" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formular de verificare a identității" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Confirmă că ești tu" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Verifică-ți adresa de e-mail pentru a trimite cereri de prietenie." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Verifică-ți adresa de e-mail înainte de a adăuga o cheie de acces." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Verifică-ți adresa de e-mail înainte de a adăuga o aplicație de autentificare." @@ -37571,7 +37583,7 @@ msgstr "Vizualizează și gestionează utilizatorii banați." msgid "View and manage every webhook configured across your community." msgstr "Vezi și gestionează fiecare webhook configurat în comunitatea ta." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Vizualizează și gestionează codurile de rezervă pentru recuperarea contului" @@ -37605,7 +37617,7 @@ msgstr "Vizualizare canal" msgid "View channel members" msgstr "Vizualizează membrii canalului" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Vezi codurile" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Vezi planurile" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Vezi profilul" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "canal vocal" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Canal vocal" @@ -38073,7 +38085,7 @@ msgstr "Anulată" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Așteaptă aici" msgid "Waiting for connection..." msgstr "Se așteaptă conexiunea..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Se așteaptă cheia de acces…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Urmărește" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Urmărește streamul" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Previzualizări site-uri web" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Bine ai revenit" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Nu ești în nicio comunitate în acest moment." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Ai blocat utilizatorul {userName}. Nu vei putea trimite mesaje decât dacă îl deblochezi." @@ -39101,6 +39113,11 @@ msgstr "Poți anula procesul de ștergere în decurs de 14 zile" msgid "You can close this modal. The import will continue in the background." msgstr "Poți închide această fereastră. Importul va continua în fundal." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Poți închide această filă" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Acum poți închide această filă și te poți întoarce la aplicație." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Nu îți poți trimite o cerere de prietenie." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Nu poți trimite mesaje pe acest canal." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Va trebui în continuare să finalizezi pasul cu e-mailul." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Nu ți se va mai cere o cheie de acces după parolă. Aplicația ta de autentificare rămâne al doilea factor." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Va trebui să te conectezi din nou pe toate dispozitivele deconectate" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Vei avea nevoie de una dintre cheile tale de acces pentru a te conecta pe un dispozitiv nou. Dacă pierzi toate cheile de acces, poți rămâne definitiv fără acces la contul tău. Îți vom salva coduri de rezervă, ca să ai în continuare o cale de acces." @@ -39918,12 +39935,12 @@ msgstr "Contul tău este prea nou pentru a trimite mesaje în această comunitat msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Solicitarea ta de cont așteaptă aprobare. Te poți conecta după ce un administrator o aprobă." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Contul tău necesită autentificare multi-factor, dar nu sunt configurate metode acceptate pe acest dispozitiv. Conectează-te pe un dispozitiv cu aplicația de autentificare sau cu cheia de securitate, sau contactează asistența." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Contul tău nu va mai fi protejat de autentificarea în doi pași atunci când te conectezi cu parola. De asemenea, vei pierde permisiunile extinse în comunitățile care necesită autentificare în doi pași." @@ -39941,16 +39958,6 @@ msgstr "Acțiunea ta nu a putut fi finalizată deoarece a fost semnalată de sis msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Cererea ta este în curs de examinare. Poți actualiza în continuare detaliile listării sau poți retrage cererea." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Browserul tău a blocat fereastra pop-up pentru cheia de acces. Permite pop-up-urile pentru acest site și încearcă din nou." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Browserul tău nu acceptă chei de acces pe acest domeniu. Actualizează-ți browserul sau conectează-te cu parola și codul de autentificare în doi pași." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Comunitatea ta are nevoie de cel puțin {minMemberCount, plural, one {# msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Cardul tău de credit a fost verificat. Dacă este valid, conținutul pentru adulți se va debloca în scurt timp. Poți închide această filă și reveni la aplicație." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Dispozitivul tău îți va cere să salvezi o cheie de acces actualizată pentru {name}. Aceasta o va înlocui pe cea veche." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Dispozitivul tău îți va cere să salvezi o cheie de acces actualizată pentru {name}. Folosește același telefon sau aceeași cheie de securitate ca adineauri." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Maximizează" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Mărire" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/ru/messages.po b/fluxer_app/src/features/i18n/locales/ru/messages.po index a5bbd81ce..f43f3d34e 100644 --- a/fluxer_app/src/features/i18n/locales/ru/messages.po +++ b/fluxer_app/src/features/i18n/locales/ru/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {участник} few {участника} many {участников} other {участников}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# упоминание} few {# упоминания} many {# упоминаний} other {# упоминания}}" @@ -2370,8 +2370,8 @@ msgstr "6 месяцев" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-значный код" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Переопределения аккаунта и премиума" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Доступ к аккаунту" @@ -2807,7 +2807,7 @@ msgstr "Активный ежемесячный подписчик (отмена #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Чтобы продолжить, добавьте аккаунт." msgid "Add an email and password to your account first." msgstr "Сначала добавьте адрес электронной почты и пароль к своему аккаунту." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Добавьте дополнительный уровень защиты аккаунта" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Добавить бота в место назначения" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Добавить канал" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Добавляйте новые реакции к сообщениям." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Добавить заметку" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Добавить переопределение" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Добавить ключ доступа" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Добавить реакцию" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Добавить в словарь" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Добавить в избранное" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Добавлено в избранные GIF" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Добавлено в избранное" @@ -3296,11 +3296,11 @@ msgstr "Добавлено в избранное" msgid "Added to saved media" msgstr "Добавлено в сохраненные медиа" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Добавлено: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Добавлено: {createdDate} • последнее использование: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Все языки" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Все сообщения" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Уже удалено" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Уже есть аккаунт?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Масштаб приложения" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Масштаб приложения" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Одобрить" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Подтвердите это приложение из приложения {productName}, которое вы уже используете. Пароль не требуется." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Вы уверены, что хотите удалить категорию «{categoryName}»? Это действие нельзя отменить." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Вы уверены, что хотите удалить ключ доступа <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Вы уверены, что хотите удалить это влож msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Вы уверены, что хотите удалить это сообщество? Это действие необратимо. Все каналы, сообщения и настройки будут удалены безвозвратно." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Вы уверены, что хотите удалить этот ключ доступа?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Спрашивать перед началом звонков" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Запрашивать ключ доступа после ввода пароля при входе" @@ -4690,7 +4690,7 @@ msgstr "Вложения" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Аудио" @@ -4851,14 +4851,14 @@ msgstr "Аутентификация" msgid "Authenticator" msgstr "Аутентификатор" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Приложение-аутентификатор" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Код аутентификатора" @@ -4928,7 +4928,7 @@ msgstr "Авторизованные приложения" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Сейчас нет на месте" msgid "Back" msgstr "Назад" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Назад в {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Назад к ролям" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Назад к настройкам" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Назад к входу" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Резервный код" @@ -5351,7 +5356,7 @@ msgstr "Резервный код" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Достигнут лимит закладок" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Звонки" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Камера выключена" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Камера включена" @@ -6364,9 +6369,9 @@ msgstr "Сюда нельзя загружать файлы" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Сюда нельзя загружать файлы" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Изменить эмодзи" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Изменить никнейм друга" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Изменить свой никнейм в группе" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Изменить никнейм" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Действия с каналом" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Канал добавлен в избранное" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Канал создан" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Отладка канала" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Канал удалён" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Запись канала" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Канал удален из избранного" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Выберите акцентный цвет профиля" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Подтвердить аккаунт" @@ -7715,7 +7720,7 @@ msgstr "Чтобы отправлять жалобы, подтвердите а msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Подтвердите аккаунт, добавив почту и пароль. Перед завершением мы отправим код для подтверждения вашей почты." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Подтвердите аккаунт, чтобы получить доступ к функциям безопасности, таким как двухфакторная аутентификация и ключи доступа." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Очистить быстрый CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Очистить поиск" @@ -8103,7 +8108,7 @@ msgstr "Клонирование отключено" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Закрыть" @@ -8160,11 +8165,9 @@ msgstr "Закрывать в строку меню" msgid "Close to tray" msgstr "Закрывать в трей" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Закрыть окно" @@ -8456,7 +8459,7 @@ msgstr "Общение" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Отладка сообщества" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "По умолчанию для сообщества" @@ -8577,7 +8580,7 @@ msgstr "Запись участника сообщества" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Участники сообщества" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Уровень уведомлений сообщества" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Настройки уведомлений сообщества" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Сравнение" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Пройти проверку контента для взрослых" @@ -9093,7 +9096,7 @@ msgstr "Подключение: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Контекстные меню открываются левым кли #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Продолжить" msgid "Continue to checkout" msgstr "Перейти к оплате" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Продолжить создание ключа доступа для {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Перейти к жалобе на сообщество" msgid "Continue to report user" msgstr "Перейти к жалобе на пользователя" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Продолжить с ключом доступа" @@ -9238,11 +9238,6 @@ msgstr "Продолжить с ключом доступа" msgid "Continue with SSO" msgstr "Войти через SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Продолжите с помощью вашего ключа доступа, чтобы войти в {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Координирует рейды, травлю или преслед #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Скопировано" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Скопировать ID категории" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Скопировать ID канала" @@ -9421,12 +9416,12 @@ msgstr "Скопировать ссылку на канал" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Скопировать код" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Скопировать ID сообщества" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Скопировать ссылку-приглашение" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Скопировать сообщение" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Скопировать ID сообщения" @@ -9570,7 +9565,7 @@ msgstr "Скопировать ID сообщения" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Скопировать ссылку на стикер" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Скопируйте ключ настройки в приложение #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Скопировать ID пользователя" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Скопировать имя пользователя" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Не удалось удалить приложение" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Не удалось удалить ключ доступа" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Не удалось отправить приглашение" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Не удалось отправить приглашение. Повторите попытку." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Не удалось обновить настройку обхода подавления упоминаний" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Не удалось обновить настройку двухфакторной аутентификации по ключу доступа" @@ -10206,6 +10201,11 @@ msgstr "Не удалось обновить альтернативный тек msgid "Couldn't update voice activity sharing right now" msgstr "Не удалось обновить настройки голосовой активности" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Не удалось обновить ключ доступа. Повторите попытку." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Не удалось загрузить аватар" msgid "Couldn't upload banner" msgstr "Не удалось загрузить баннер" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Не удалось использовать ваш ключ доступа во всплывающем окне. Попробуйте снова." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Не удалось проверить код. Попробуйте ещ msgid "Couldn't verify the connection" msgstr "Не удалось проверить подключение" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Не удалось подтвердить с помощью ключа доступа. Повторите попытку." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Уютный" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Создать" @@ -10298,7 +10293,7 @@ msgstr "Создать новую группу с {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Создать приложение" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Создать категорию" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Создать канал" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Создать сообщество" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Пользовательский текст предупреждения" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Другое…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Отладка" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Отладка канала" @@ -11164,7 +11159,7 @@ msgstr "Отладка сообщения" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Отладка пользователя" @@ -11315,7 +11310,7 @@ msgstr "Делавэр" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Удалить {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Удалить аккаунт" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Удалить приложение" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Удалить вложение" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Удалить медиа" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Удалить сообщение" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Удалять сообщения других участников. Закрепление настраивается отдельно." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Удалить ключ доступа" @@ -11701,7 +11696,7 @@ msgstr "Опишите, чему посвящено ваше сообществ #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Описание" @@ -11966,7 +11961,7 @@ msgstr "Устройство:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Прямой ввод" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Личное сообщение" @@ -12050,7 +12045,7 @@ msgstr "Предпросмотр личных сообщений" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Личные сообщения" @@ -12077,14 +12072,14 @@ msgstr "Прямая загрузка активна" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Отключить" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Отключить аккаунт" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Нет подключения" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Сообщество в каталоге" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Дискриминатор" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Закрыть" @@ -12477,7 +12472,7 @@ msgstr "Настройки личных сообщений и запросов #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Личный чат закрыт" @@ -12607,7 +12602,7 @@ msgstr "Не блокирует. Можно будет открыть позже #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Домен" @@ -12697,7 +12692,7 @@ msgstr "Дважды нажмите на пользователя, чтобы п #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Нидерландский" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "напр., YubiKey, iPhone, рабочий компьютер" @@ -13092,7 +13087,7 @@ msgstr "Изменять общие настройки: название, опи #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Изменить группу" @@ -13123,7 +13118,7 @@ msgstr "Изменить медиа" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Изменить сообщение" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Возврат средств возможен до {windowEndsOn}. Это также немедленно отменит вашу подписку." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Эл. почта" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Эмодзи обновлён" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Эмодзи" @@ -13525,7 +13520,7 @@ msgstr "Избранное пусто" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Включить" @@ -13680,7 +13675,7 @@ msgstr "Включить мобильные push-уведомления" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Включить уведомления" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Включите интеграции, для которых вы настроили учетные данные. Отображаются только доступные сервисы." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Включить двухфакторную аутентификацию" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Английский (США)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Улучшенное" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Введите новый адрес эл. почты" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Введите один из резервных кодов, если не можете использовать ключ доступа." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Введите один из резервных кодов." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Введите текст" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Введите {digitCount}-значный код из приложения-аутентификатора или резервный код." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Введите код, чтобы продолжить." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Введите код из приложения-аутентификатора." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Введите ваше имя" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Введите пароль." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Срок действия истёк <0>{expiredDate}. <1/> больше не активны. Вы можете подписаться снова в любое время." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Истекает" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Автозавершение выражений" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Категории выражений" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Не удалось подготовить эмодзи" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Не удалось обработать обрезанное изображение. Повторите попытку." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Не удалось запустить SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Не удалось сменить аккаунт" @@ -15053,7 +15048,7 @@ msgstr "Избранное" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Избранное" @@ -15268,6 +15263,11 @@ msgstr "Завершите настройку аккаунта" msgid "Finish account setup first" msgstr "Сначала завершите настройку аккаунта" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Завершите в новой вкладке. Если вы её закрыли, снова нажмите «Продолжить с ключом доступа»." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Название папки" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Настройки папки" @@ -15479,7 +15479,7 @@ msgstr "Для меня" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Для этой проверки СМС отправляете нам вы, а не мы вам." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Для вашей безопасности подтвердите, что это вы, чтобы продолжить." @@ -15606,7 +15606,7 @@ msgstr "Восстановление пароля" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Забыли пароль?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Только друзья и небольшие сообщества" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Друзья друзей" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Общие" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Германия" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Получить {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "Ссылки на GIF-файлы" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF-файлы" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Глобальное сочетание клавиш" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Назад" @@ -16374,6 +16374,11 @@ msgstr "Назад" msgid "Go back and enter a valid email." msgstr "Вернитесь и введите действительный адрес электронной почты." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Вернитесь в {productName}, чтобы продолжить." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Скрыть сноски об истечении срока действия" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Скрыть избранное" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Скрыть заглушенные" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Скрыть заглушенные каналы" @@ -17358,7 +17363,7 @@ msgstr "Идентичность" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Неактивен" @@ -17818,7 +17823,7 @@ msgstr "Неприемлемый профиль" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Входящие" @@ -17867,7 +17872,7 @@ msgstr "Укажите ID сообщества." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Предпросмотр страницы приглашения" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Пригласить участников" @@ -18456,7 +18461,7 @@ msgstr "Пригласивший:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Приглашения" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Присоединиться к звонку" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Присоединиться к сообществу" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "В {productName} с" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Перейти" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Исключить участника из сообщества." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Исключить участника" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Выйти из звонка" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Покинуть сообщество" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Конструктор ссылок" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Ссылка скопирована" @@ -19859,8 +19864,8 @@ msgstr "Вредоносное ПО или опасные ссылки" msgid "Malware, credential theft, or harmful files." msgstr "Вредоносное ПО, кража учетных данных или опасные файлы." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Управление" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Управление аккаунтами" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Управляйте приложениями и устройствами, имеющими доступ к вашему аккаунту" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Сразу помечать все непрочитанные каналы входящих как прочитанные, без запроса подтверждения" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Отметить как прочитанное" @@ -20021,7 +20026,7 @@ msgstr "Отметить как спойлер" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Отметить как непрочитанное" @@ -20169,7 +20174,7 @@ msgstr "Сообщество для взрослых" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Контент для взрослых" @@ -20315,7 +20320,7 @@ msgstr "Измерение…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "участников" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Участники" @@ -20616,7 +20621,7 @@ msgstr "Упомянуть эту роль?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Упоминания" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Другие действия с медиа" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Другие действия" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Отключить звонки" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Отключить уведомления категории" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Отключить уведомления сообществ" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Отключить уведомления сообщества" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Выключить звук входа" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Отключить уведомления избранного" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Название должно содержать не менее 2 символов" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Назвать ключ доступа" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Форма для названия ключа доступа" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Небраска" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Нужен аккаунт?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Невада" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Никогда" @@ -22276,7 +22281,7 @@ msgstr "Сначала новые" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Далее" @@ -22905,7 +22910,7 @@ msgstr "Пользователи не найдены" msgid "No verification is required." msgstr "Проверка не требуется." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Нет доступных способов подтверждения" @@ -23038,11 +23043,13 @@ msgstr "Страница не найдена" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Не сейчас" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Заметка (видна только вам)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Ничего" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Переопределения уведомлений" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Настройки уведомлений" @@ -23152,7 +23159,7 @@ msgstr "Громкость уведомлений" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Выкл" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Не в сети" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "ОК" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "онлайн" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "В сети" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Изменять это могут только участники с разрешением «{manageCommunityPermissionLabel}»." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Только упоминания" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Открыть {labelText} в настройках" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Открыть {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Открытые личные чаты" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Открыть личный чат" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Открыть счёт {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Открыть ссылку" @@ -23850,7 +23857,7 @@ msgstr "Открыть быстрый переход" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Открыть настройки" @@ -23935,11 +23942,6 @@ msgstr "Открыть всплывающее окно студии тем" msgid "Open theme studio…" msgstr "Открыть студию тем…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Откройте это окно из {productName}, чтобы использовать ваш ключ доступа." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Параметры" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Ключ доступа" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Название ключа доступа" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Ключ доступа обновлён" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Ключи доступа" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Для ключей доступа требуется подписанный пакет macOS с действительным идентификатором приложения. Установите подписанный клиент для ПК и повторите попытку." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Пароль" msgid "Password changed" msgstr "Пароль изменён" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Менеджеры паролей могут не предлагать ваш ключ доступа по этому адресу. Попробуйте использовать его во всплывающем окне по старому адресу." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Вставьте ссылку на сообщение." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Личный словарь" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Личные заметки" @@ -24885,7 +24887,7 @@ msgstr "Закрепить групповой чат" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Закрепить сообщение" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "закреплено" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Закреплённый чат" @@ -25020,7 +25022,7 @@ msgstr "Администратор платформы" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Воспроизвести" @@ -25318,6 +25320,11 @@ msgstr "Нажмите клавишу, кнопку мыши или геймпа msgid "Press a shortcut…" msgstr "Нажмите сочетание клавиш…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Нажмите «Продолжить», чтобы использовать ключ доступа." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Основной язык" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Основная навигация" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Политика конфиденциальности" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Настройки конфиденциальности" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Совет:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Продолжить" @@ -26090,7 +26097,7 @@ msgstr "Поставить реакцию {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Повторная генерация сделает текущий токен недействительным. Обновите весь код, использующий старое значение." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Регистрация" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Зарегистрированные ключи доступа" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Удалить баннер" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Удалить из закладок" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Удалить из словаря" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Удалить из избранного" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Удалено из избранных GIF" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Удалено из избранного" @@ -27032,7 +27039,7 @@ msgstr "Удаление разрешений может ограничить ф msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Снятие тайм-аута позволит <0>{targetUserTag} снова отправлять сообщения, реагировать и присоединяться к голосовым каналам." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Переименовать" @@ -27119,7 +27126,7 @@ msgstr "Ответы" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Ответить" @@ -27209,7 +27216,7 @@ msgstr "Сообщить о проблеме" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Пожаловаться на сообщение" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Требовать 2FA для действий модерации" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Требовать ключ доступа в качестве второго фактора" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Ссылка для сброса недействительна или устарела" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Сбросить статус согласия на просмотр контента для взрослых" @@ -27880,7 +27887,7 @@ msgstr "Поиск по картинке" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Поиск по картинке" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Проверьте и подтвердите" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Просмотрите приложения, которые могут получить доступ к вашему аккаунту." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Просмотр прошлых покупок и вариантов возврата средств" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Просмотрите устройства, на которых выполнен вход, и завершите незнакомые сессии." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Роль обновлена" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Роли" @@ -28261,7 +28268,7 @@ msgstr "Насыщенность" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Область" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Разрешения" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Программа чтения с экрана" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Искать каналы, людей или сообщества" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Поиск друзей" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Искать выделенный текст" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Поиск по настройкам" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Поиск настроек…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Безопасность" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Функции безопасности" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Ключ безопасности" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Ключ безопасности / ключ доступа" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Деликатные медиа" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Отправлено" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Сессия" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Срок действия сессии для {identifier} истёк. Войдите снова." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Устанавливает общую громкость для всех звуковых эффектов. Индивидуальные настройки звуков будут игнорировать эту опцию." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Настройки открыты." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Разделы настроек" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Боковая панель" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Войти" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Войдите, чтобы получить подарок" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Войти через браузер" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Войти с помощью ключа доступа" @@ -30666,7 +30673,7 @@ msgstr "Войти через систему единого входа ваше #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Выйти" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Данные для входа" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Вход в аккаунт" @@ -31189,7 +31196,7 @@ msgstr "Некоторых пользователей нельзя добави #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Что-то пошло не так" @@ -31374,7 +31381,7 @@ msgstr "Громкость" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Звуки" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Начинать загрузку вложений сразу после их добавления в поле ввода сообщения" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Начать видеозвонок" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Начать голосовой звонок" @@ -31899,7 +31906,7 @@ msgstr "стикер" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Стикер: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Стикеры" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Перестать доверять всем ссылкам?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Прекратить использовать ключи доступа для двухфакторной аутентификации?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Отключить все упоминания ролей" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Скрыть предпросмотр" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "текстовый канал" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Текстовый канал" @@ -33055,7 +33062,7 @@ msgstr "Напишите нам со своего телефона" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Преобразование текста в речь" @@ -33119,6 +33126,11 @@ msgstr "Не удалось завершить. Возможно, вы уже п msgid "That did not go through. Nothing changed. Try again." msgstr "Не удалось. Ничего не изменилось. Попробуйте снова." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Не получилось. Повторите попытку или отмените." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Это не похоже на действительный цвет. Попробуйте шестнадцатеричный код, rgb(), hsl() или название цвета CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Это изображение не удалось использовать. Попробуйте другой файл." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Это изображение не подходит. Попробуйте другое." @@ -34035,11 +34047,11 @@ msgstr "Это описание второго варианта" msgid "This is the third option description" msgstr "Это описание третьего варианта" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Это ваш последний ключ доступа, а ключи доступа используются как второй фактор. Его удаление отключит двухфакторную аутентификацию для вашего аккаунта, и текущие резервные коды перестанут работать." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Это ваш последний ключ доступа. После его удаления вы не сможете использовать ключ доступа в качестве второго фактора." @@ -34154,16 +34166,6 @@ msgstr "У этого участника отключён звук" msgid "This participant was deafened by moderators" msgstr "Модераторы отключили звук этому участнику" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Не удалось проверить этот запрос ключа доступа. Закройте это окно и попробуйте снова." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Время ожидания запроса ключа доступа истекло. Закройте это окно и попробуйте снова." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Будут удалены все доверенные домены. Пр msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Будут удалены все пользовательские сочетания клавиш и восстановлены все встроенные. Это действие отменить нельзя." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Срок действия этого запроса истёк. Вернитесь и попробуйте снова." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Срок действия этой ссылки для сброса пароля истек. Такие ссылки действуют 1 час. Запросите новую." @@ -34807,7 +34814,7 @@ msgstr "Передать права владельца группы пользо #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Передать права владельца" @@ -34823,7 +34830,7 @@ msgstr "Права владельца переданы пользователю #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Перевести" @@ -34980,7 +34987,7 @@ msgstr "Попробуйте другое имя переменной или о #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Повторить" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Повторить" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Повторите попытку позже." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Попробуйте поискать что-то вроде «тема», «уведомления» или «конфиденциальность»" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Попробовать ключ безопасности / ключ доступа" @@ -35088,7 +35095,7 @@ msgstr "Турецкий" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Выключить" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Отключите общий доступ к аудио для этого источника или попробуйте снова через мгновение." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Выключить камеру" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Отключите конфиденциальность стрима, прежде чем просматривать данные для входа или сведения о безопасности аккаунта." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Включить" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Двухфакторная аутентификация" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Двухфакторная аутентификация" @@ -35288,7 +35295,7 @@ msgstr "Двухфакторная аутентификация отключен msgid "Two-factor authentication enabled" msgstr "Двухфакторная аутентификация включена" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Двухфакторная аутентификация включена" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Разблокировать пользователя" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Без категории" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Подчеркивать ссылки на веб-сайты" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Понятно" @@ -35643,7 +35650,7 @@ msgstr "Универсальный вариант. Низкое качество #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Включить микрофон на всех устройствах" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Включить уведомления категории" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Включить уведомления сообществ" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Включить уведомления сообщества" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Включить уведомления в личных чатах" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Включить уведомления избранного" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Открепить" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Открепить сообщение" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Открепить это сообщение?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Чат откреплен" @@ -36193,6 +36200,11 @@ msgstr "Обновить почту" msgid "Update my status" msgstr "Обновить мой статус" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Обновить ключ доступа" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Изменить тайм-аут" msgid "Update your own nickname." msgstr "Изменить свой никнейм." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Обновите ключ доступа" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Используйте отдельное окно, чтобы зада msgid "Use a different email address and verify it with a code." msgstr "Используйте другой адрес электронной почты и подтвердите его с помощью кода." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Использовать ключ доступа из менеджера паролей" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Использовать фактическое значение" msgid "Use alternative method" msgstr "Использовать другой способ" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Используйте приложение-аутентификатор для генерации кодов двухфакторной аутентификации" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Используйте, только если это явно нарушает правила {productName} и не подходит под другие категории." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Использовать ключи доступа для двухфакторной аутентификации?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Используйте ключи доступа для входа без пароля" @@ -36824,8 +36836,8 @@ msgstr "Использовать активацию голосом" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Используйте проверку орфографии вашей операционной системы, если она доступна. В противном случае используйте встроенные словари {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Используйте ваш ключ доступа" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Панель пользователя" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Отладка пользователя" @@ -36972,7 +36984,7 @@ msgstr "Громкость пользователя" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Проверка отменена" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Код подтверждения" @@ -37185,7 +37197,7 @@ msgstr "Письмо для подтверждения отправлено. П msgid "Verification expired" msgstr "Срок действия проверки истёк" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Подтвержденное сообщество" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Подтвердить" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Подтвердить подключение" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Подтвердить почту" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Форма подтверждения личности" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Подтвердите, что это вы" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Подтвердите свой адрес электронной почты, чтобы отправлять запросы на добавление в друзья." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Подтвердите почту, прежде чем добавлять ключ доступа." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Подтвердите почту, прежде чем добавлять приложение-аутентификатор." @@ -37571,7 +37583,7 @@ msgstr "Просматривайте забаненных пользовател msgid "View and manage every webhook configured across your community." msgstr "Просматривайте вебхуки, настроенные для вашего сообщества, и управляйте ими." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Просматривайте резервные коды для восстановления аккаунта и управляйте ими" @@ -37605,7 +37617,7 @@ msgstr "Просмотр канала" msgid "View channel members" msgstr "Просмотр участников канала" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Посмотреть коды" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Посмотреть тарифы" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Посмотреть профиль" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "голосовой канал" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Голосовой канал" @@ -38073,7 +38085,7 @@ msgstr "Аннулировано" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Подождите" msgid "Waiting for connection..." msgstr "Ожидание подключения..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Ожидание ключа доступа…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Смотреть" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Смотреть трансляцию" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Предпросмотр ссылок" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "С возвращением" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Вы пока не состоите ни в одном сообществе." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Вы заблокировали пользователя {userName}. Вы не сможете отправлять сообщения, пока не разблокируете его." @@ -39101,6 +39113,11 @@ msgstr "Вы можете отменить удаление в течение 14 msgid "You can close this modal. The import will continue in the background." msgstr "Можете закрыть это окно. Импорт продолжится в фоновом режиме." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Эту вкладку можно закрыть" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Теперь можно закрыть эту вкладку и вернуться в приложение." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Вы не можете отправить себе запрос в друзья." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Вы не можете отправлять сообщения в этом канале." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Вам всё ещё нужно будет завершить шаг с электронной почтой." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Ключ доступа больше не будет запрашиваться после ввода пароля. Приложение-аутентификатор останется вашим вторым фактором." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Вам придётся заново войти на всех устройствах, с которых выполнен выход" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Для входа на новом устройстве вам понадобится один из ваших ключей доступа. Если вы лишитесь всех ключей доступа, вы можете навсегда потерять доступ к аккаунту. Резервные коды будут сохранены, чтобы у вас остался способ войти." @@ -39918,12 +39935,12 @@ msgstr "Ваш аккаунт слишком новый, чтобы отправ msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Ваш запрос на создание аккаунта ожидает одобрения. Вы сможете войти после одобрения администратором." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Для вашего аккаунта требуется многофакторная аутентификация, но на этом устройстве не настроены поддерживаемые методы. Войдите на устройстве с приложением-аутентификатором или ключом безопасности либо обратитесь в службу поддержки." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Ваш аккаунт больше не будет защищен двухфакторной аутентификацией при входе с помощью пароля. Вы также потеряете расширенные разрешения в сообществах, где требуется двухфакторная аутентификация." @@ -39941,16 +39958,6 @@ msgstr "Ваше действие не удалось выполнить, так msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Ваша заявка находится на рассмотрении. Вы можете обновить данные объявления или отозвать заявку." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Ваш браузер заблокировал всплывающее окно для ключа доступа. Разрешите всплывающие окна для этого сайта и попробуйте снова." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Ваш браузер не поддерживает ключи доступа для этого домена. Обновите браузер или войдите с помощью пароля и двухфакторного кода." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Чтобы разместить сообщество в каталоге msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Ваша кредитная карта проверена. Если карта действительна, доступ к контенту для взрослых будет открыт в ближайшее время. Вы можете закрыть эту вкладку и вернуться в приложение." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Ваше устройство предложит сохранить обновлённый ключ доступа для {name}. Он заменит старый." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Ваше устройство предложит сохранить обновлённый ключ доступа для {name}. Используйте тот же телефон или ключ безопасности, что и только что." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Изменить масштаб" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Увеличить" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/sv-SE/messages.po b/fluxer_app/src/features/i18n/locales/sv-SE/messages.po index 3a0d9d9f6..d333a1252 100644 --- a/fluxer_app/src/features/i18n/locales/sv-SE/messages.po +++ b/fluxer_app/src/features/i18n/locales/sv-SE/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {medlem} other {medlemmar}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# omnämnande} other {# omnämnanden}}" @@ -2370,8 +2370,8 @@ msgstr "6 månader" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-siffrig kod" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Konto- och premiumåsidosättningar" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Kontoåtkomst" @@ -2807,7 +2807,7 @@ msgstr "Aktiv månadsabonnent (uppsägning planerad)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Lägg till ett konto för att fortsätta." msgid "Add an email and password to your account first." msgstr "Lägg till en e-postadress och ett lösenord till ditt konto först." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Lägg till ett extra säkerhetslager till ditt konto" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Lägg till bot i en destination" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Lägg till kanal" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Lägg till nya reaktioner på meddelanden." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Lägg till anteckning" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Lägg till åsidosättning" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Lägg till lösennyckel" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Lägg till reaktion" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Lägg till i ordlista" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Lägg till i favoriter" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Tillagd i favorit-GIF:ar" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Tillagd i favoriter" @@ -3296,11 +3296,11 @@ msgstr "Tillagd i favoriter" msgid "Added to saved media" msgstr "Tillagd i sparade medier" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Tillagd: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Tillagd: {createdDate} • senast använd: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Alla språk" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Alla meddelanden" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Redan borttagen" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Har du redan ett konto?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Appzoom" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Appens zoomnivå" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Godkänn" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Godkänn den här appen från {productName}-appen som du redan använder. Inget lösenord behövs." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Är du säker på att du vill radera kategorin \"{categoryName}\"? Detta kan inte ångras." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Är du säker på att du vill ta bort lösennyckeln <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Är du säker på att du vill radera den här bilagan? Det går inte att msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Är du säker på att du vill ta bort den här communityn? Det går inte att ångra. Alla kanaler, meddelanden och inställningar tas bort permanent." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Är du säker på att du vill radera den här lösennyckeln?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Fråga innan du startar samtal" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Be om en lösennyckel efter ditt lösenord när du loggar in" @@ -4690,7 +4690,7 @@ msgstr "Bilagor" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Ljud" @@ -4851,14 +4851,14 @@ msgstr "Autentisering" msgid "Authenticator" msgstr "Autentiserare" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Autentiseringsapp" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Autentiseringskod" @@ -4928,7 +4928,7 @@ msgstr "Auktoriserade appar" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Borta just nu" msgid "Back" msgstr "Tillbaka" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Tillbaka till {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Tillbaka till roller" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Tillbaka till inställningar" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Tillbaka till inloggning" @@ -5342,8 +5347,8 @@ msgstr "Backsteg" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Reservkod" @@ -5351,7 +5356,7 @@ msgstr "Reservkod" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Bokmärkesgränsen har nåtts" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Samtal" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kameran avstängd" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kameran på" @@ -6364,9 +6369,9 @@ msgstr "Kan inte ladda upp filer här" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Kan inte ladda upp filer här" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Ändra emoji" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Ändra väns smeknamn" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Ändra mitt gruppsmeknamn" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Ändra smeknamn" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Kanalåtgärder" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanalen har lagts till i favoriter" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanal skapad" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Kanal-felsökning" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanalen raderad" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Kanalpost" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanal borttagen från favoriter" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Välj accentfärg för din profil" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Säkra kontot" @@ -7715,7 +7720,7 @@ msgstr "Säkra ditt konto och verifiera din e-postadress för att skicka anmäln msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Säkra ditt konto genom att lägga till en e-postadress och ett lösenord. Vi skickar en verifieringskod för att bekräfta e-postadressen innan vi slutför processen." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Säkra ditt konto för att använda säkerhetsfunktioner som tvåfaktorsautentisering och lösennycklar." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Rensa snabb-CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Rensa sökning" @@ -8103,7 +8108,7 @@ msgstr "Kloning är inaktiverad" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Stäng" @@ -8160,11 +8165,9 @@ msgstr "Stäng till menyraden" msgid "Close to tray" msgstr "Stäng till meddelandefältet" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Stäng fönstret" @@ -8456,7 +8459,7 @@ msgstr "Kommunikation" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Felsök community" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Communityns standardinställning" @@ -8577,7 +8580,7 @@ msgstr "Datapost för communitymedlem" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Communitymedlemmar" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Aviseringsnivå för community" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Inställningar för communityaviseringar" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Jämförelse" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Slutför kontrollen för vuxet innehåll" @@ -9093,7 +9096,7 @@ msgstr "Anslutning: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Snabbmenyer kan öppnas med vänsterklick (på knappar) eller högerklic #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Fortsätt" msgid "Continue to checkout" msgstr "Fortsätt till kassan" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Fortsätt för att skapa en lösennyckel för {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Fortsätt för att anmäla communityn" msgid "Continue to report user" msgstr "Fortsätt för att anmäla användaren" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Fortsätt med lösennyckel" @@ -9238,11 +9238,6 @@ msgstr "Fortsätt med lösennyckel" msgid "Continue with SSO" msgstr "Fortsätt med SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Fortsätt med din lösennyckel för att logga in på {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Samordnar räder, samlade påhopp eller trakasserier mot personer eller #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Kopierat" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kopiera kategori-ID" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kopiera kanal-ID" @@ -9421,12 +9416,12 @@ msgstr "Kopiera kanallänk" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Kopiera kod" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Kopiera community-ID" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Kopiera inbjudningslänk" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Kopiera meddelande" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Kopiera meddelande-ID" @@ -9570,7 +9565,7 @@ msgstr "Kopiera meddelande-ID" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Kopiera klistermärkes-URL" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Kopiera konfigurationsnyckeln till din autentiseringsapp." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Kopiera användar-ID" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Kopiera användarnamn" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Kunde inte ta bort applikationen" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Kunde inte ta bort lösennyckel" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Kunde inte skicka inbjudan" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Kunde inte skicka inbjudan. Försök igen." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Kunde inte uppdatera undantaget från blockerade omnämnanden" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Kunde inte uppdatera tvåfaktorsautentisering med lösennyckel" @@ -10206,6 +10201,11 @@ msgstr "Kunde inte uppdatera alt-texten. Försök igen." msgid "Couldn't update voice activity sharing right now" msgstr "Kunde inte uppdatera delning av röstaktivitet just nu" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Kunde inte uppdatera din lösennyckel. Försök igen." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Kunde inte ladda upp avatar" msgid "Couldn't upload banner" msgstr "Kunde inte ladda upp bannern" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Det gick inte att använda din lösennyckel i popup-fönstret. Försök igen." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Kunde inte verifiera koden. Försök igen." msgid "Couldn't verify the connection" msgstr "Kunde inte verifiera anslutningen" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Kunde inte verifiera med lösennyckel. Försök igen." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Mysigt" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Skapa" @@ -10298,7 +10293,7 @@ msgstr "Skapa en ny grupp med {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Skapa applikation" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Skapa kategori" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Skapa kanal" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Skapa community" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Anpassad varningstext" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Anpassad…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Felsökning" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Felsök kanal" @@ -11164,7 +11159,7 @@ msgstr "Felsök meddelande" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Felsök användare" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Ta bort {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Ta bort konto" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Ta bort applikation" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Ta bort bilaga" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Ta bort medieobjekt" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Ta bort meddelande" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Ta bort andra medlemmars meddelanden. Behörigheten att fästa meddelanden styrs separat." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Ta bort lösennyckel" @@ -11701,7 +11696,7 @@ msgstr "Beskriv vad din community handlar om" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Beskrivning" @@ -11966,7 +11961,7 @@ msgstr "Enhet:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Direktinmatning" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Direktmeddelande" @@ -12050,7 +12045,7 @@ msgstr "Förhandsvisningar av direktmeddelanden" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Direktmeddelanden" @@ -12077,14 +12072,14 @@ msgstr "Direktuppladdning aktiv" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Inaktivera" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Inaktivera konto" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Frånkopplad" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Upptäckbar community" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Diskriminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Stäng" @@ -12477,7 +12472,7 @@ msgstr "Inställningar för DM och vänförfrågningar" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM-konversationen stängd" @@ -12607,7 +12602,7 @@ msgstr "Blockerar inte. Du kan öppna igen senare." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Domän" @@ -12697,7 +12692,7 @@ msgstr "Dubbelklicka på någon för att titta på personens sändning." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Nederländska" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "t.ex. YubiKey, iPhone, jobbdator" @@ -13092,7 +13087,7 @@ msgstr "Redigera globala inställningar som namn, beskrivning och ikon." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Redigera grupp" @@ -13123,7 +13118,7 @@ msgstr "Redigera medieobjekt" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Redigera meddelande" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Du kan få återbetalning fram till {windowEndsOn}. Då avslutas även ditt abonnemang omedelbart." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-post" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji uppdaterad" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojier" @@ -13525,7 +13520,7 @@ msgstr "Tomma favoriter" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Aktivera" @@ -13680,7 +13675,7 @@ msgstr "Aktivera pushaviseringar på mobilen" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Aktivera aviseringar" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Aktivera de integrationer vars autentiseringsuppgifter du har konfigurerat. Endast tillgängliga tjänster visas." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Aktivera tvåfaktorsautentisering" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Engelska (USA)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Förbättrad" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Ange ny e-postadress" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Ange en av dina reservkoder om du inte kan använda din lösennyckel." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Ange en av dina reservkoder." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Ange text" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Ange den {digitCount}-siffriga koden från din autentiseringsapp eller en reservkod." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Ange koden innan du fortsätter." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Ange koden från din autentiseringsapp." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Ange ditt namn" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Ange ditt lösenord." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Gick ut den <0>{expiredDate}. <1/> är inte längre aktiva. Du kan teckna ett nytt abonnemang när som helst." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Upphör" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Automatisk komplettering av uttryck" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Kategorier för uttrycksväljaren" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Kunde inte förbereda emojier" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Det gick inte att bearbeta den beskurna bilden. Försök igen." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Kunde inte starta SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Kunde inte byta konto" @@ -15053,7 +15048,7 @@ msgstr "Favoritmarkerade" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favoriter" @@ -15268,6 +15263,11 @@ msgstr "Slutför konfigureringen av kontot" msgid "Finish account setup first" msgstr "Slutför konfigureringen av kontot först" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Slutför i den nya fliken. Om du stängde den, tryck på Fortsätt med lösennyckel igen." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Mappnamn" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Mappinställningar" @@ -15479,7 +15479,7 @@ msgstr "För mig" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Vid den här kontrollen skickar du ett SMS till oss i stället för att ta emot ett från oss." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "För din säkerhet, bekräfta att det är du för att fortsätta." @@ -15606,7 +15606,7 @@ msgstr "Glömt lösenord" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Glömt ditt lösenord?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Endast vänner och små communities" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Vänner till vänner" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Allmänt" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Tyskland" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Skaffa {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF-webbadresser" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF:ar" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Globalt kortkommando" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Gå tillbaka" @@ -16374,6 +16374,11 @@ msgstr "Gå tillbaka" msgid "Go back and enter a valid email." msgstr "Gå tillbaka och ange en giltig e-postadress." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Gå tillbaka till {productName} för att fortsätta." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Dölj fotnoter om utgångstid" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Dölj favoriter" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Dölj tystade" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Dölj tystade kanaler" @@ -17358,7 +17363,7 @@ msgstr "Identitet" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Inaktiv" @@ -17818,7 +17823,7 @@ msgstr "Olämplig profil" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Inkorg" @@ -17867,7 +17872,7 @@ msgstr "Ange community-ID:t." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Förhandsvisning av inbjudningssidan" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Bjud in personer" @@ -18456,7 +18461,7 @@ msgstr "Inbjudare:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Inbjudningar" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Gå med i samtalet" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Gå med i communityn" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Gick med i {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Hoppa till" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Sparka ut en medlem ur den här communityn." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Sparka ut medlem" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Lämna samtal" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Lämna community" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Länkbyggare" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Länk kopierad till urklipp" @@ -19859,8 +19864,8 @@ msgstr "Skadlig programvara eller farliga länkar" msgid "Malware, credential theft, or harmful files." msgstr "Skadlig programvara, stöld av inloggningsuppgifter eller skadliga filer." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Hantera" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Hantera konton" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Hantera appar och enheter som har åtkomst till ditt konto" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Markera alla olästa inkorgskanaler som lästa direkt, utan att fråga om bekräftelse" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Markera som läst" @@ -20021,7 +20026,7 @@ msgstr "Markera som spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Markera som oläst" @@ -20169,7 +20174,7 @@ msgstr "Community med vuxet innehåll" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Vuxet innehåll" @@ -20315,7 +20320,7 @@ msgstr "Mäter…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "medlemmar" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Medlemmar" @@ -20616,7 +20621,7 @@ msgstr "Nämn den här rollen?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Omnämnanden" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Fler medieåtgärder" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Fler alternativ" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Tysta samtal" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Tysta kategori" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Tysta communities" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Tysta community" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Stäng av anslutningsljudet" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Tysta favoriter" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Namnet måste vara minst 2 tecken långt" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Namnge lösennyckel" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Formulär för att namnge lösennyckel" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Behöver du ett konto?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Aldrig" @@ -22276,7 +22281,7 @@ msgstr "Nyast först" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Nästa" @@ -22905,7 +22910,7 @@ msgstr "Inga användare hittades" msgid "No verification is required." msgstr "Ingen verifiering krävs." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Inga verifieringsmetoder tillgängliga" @@ -23038,11 +23043,13 @@ msgstr "Sidan hittades inte" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Inte nu" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Anteckning (bara synlig för dig)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Inget" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Åsidosättningar för aviseringar" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Aviseringsinställningar" @@ -23152,7 +23159,7 @@ msgstr "Aviseringsvolym" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Av" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Offline" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Okej" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "online" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Online" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Bara medlemmar med behörigheten \"{manageCommunityPermissionLabel}\" kan ändra detta." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Endast omnämnanden" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Öppna {labelText} i inställningarna" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Öppna {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Öppna direktmeddelanden" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Öppna DM" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Öppna faktura {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Öppna länk" @@ -23850,7 +23857,7 @@ msgstr "Öppna snabbväxlaren" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Öppna inställningar" @@ -23935,11 +23942,6 @@ msgstr "Öppna temastudion i eget fönster" msgid "Open theme studio…" msgstr "Öppna temastudion…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Öppna det här fönstret från {productName} för att använda din lösennyckel." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Alternativ" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Lösennyckel" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Namn på lösennyckel" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Lösennyckel uppdaterad" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Lösennycklar" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Lösennycklar kräver ett signerat macOS-paket med ett giltigt app-ID. Installera den signerade datorappen och försök igen." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Lösenord" msgid "Password changed" msgstr "Lösenord ändrat" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Lösenordshanterare kanske inte erbjuder din lösennyckel på den här webbadressen. Prova i ett popup-fönster på den gamla adressen i stället." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Klistra in meddelandelänken." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Personlig ordlista" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Personliga anteckningar" @@ -24885,7 +24887,7 @@ msgstr "Fäst grupp-DM" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Fäst meddelande" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "fäst" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Fäst DM" @@ -25020,7 +25022,7 @@ msgstr "Plattformsadministratör" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Spela upp" @@ -25318,6 +25320,11 @@ msgstr "Tryck på en tangent, musknapp eller knapp på en spelkontroll för att msgid "Press a shortcut…" msgstr "Tryck ett kortkommando…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Tryck på Fortsätt för att använda din lösennyckel." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Primärt språk" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Huvudnavigering" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Integritetspolicy" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Sekretessinställningar" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Proffstips:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Fortsätt" @@ -26090,7 +26097,7 @@ msgstr "Reagera med {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Om du skapar en ny token blir den nuvarande ogiltig. Uppdatera all kod som använder det gamla värdet." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Registrera dig" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Registrerade lösennycklar" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Ta bort banner" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Ta bort bokmärke" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Ta bort från ordlista" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Ta bort från favoriter" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Borttagen från favorit-GIF:ar" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Borttagen från favoriter" @@ -27032,7 +27039,7 @@ msgstr "Om du tar bort behörigheter kan det begränsa botens funktioner." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Om timeouten tas bort kan <0>{targetUserTag} skicka meddelanden, reagera och gå med i röstkanaler igen." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Byt namn" @@ -27119,7 +27126,7 @@ msgstr "Svar" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Svara" @@ -27209,7 +27216,7 @@ msgstr "Rapportera problem" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Anmäl meddelande" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Kräv 2FA för moderatoråtgärder" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Kräv en lösennyckel som din andra faktor" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Återställningslänken är ogiltig eller har gått ut" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Återställ godkännandestatus för vuxet innehåll" @@ -27880,7 +27887,7 @@ msgstr "Omvänd bildsökning" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Omvänd bildsökning" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Granska och bekräfta" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Granska appar som kan komma åt ditt konto." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Granska tidigare köp och återbetalningsalternativ" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Granska inloggade enheter och logga ut sessioner som du inte känner igen." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Roll uppdaterad" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Roller" @@ -28261,7 +28268,7 @@ msgstr "Mättnad" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Omfattning" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Behörighetsomfång" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Skärmläsare" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Sök efter kanaler, personer eller communities" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Sök vänner" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Sök markerad text" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Sök inställningar" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Sök inställningar…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Säkerhet" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Säkerhetsfunktioner" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Säkerhetsnyckel" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Säkerhetsnyckel/lösennyckel" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Medier med känsligt innehåll" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Skickat" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Session" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Sessionen har gått ut för {identifier}. Logga in igen." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Ställer in nivån för alla ljudeffekter. Enskilda ljudinställningar åsidosätter detta." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Inställningar öppnade." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Inställningsavsnitt" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Sidofält" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Logga in" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Logga in för att lösa in din present" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Logga in via webbläsaren" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Logga in med en lösennyckel" @@ -30666,7 +30673,7 @@ msgstr "Logga in med din organisations SSO-leverantör." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Logga ut" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Inloggningsuppgifter" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Inloggningsflöde" @@ -31189,7 +31196,7 @@ msgstr "Vissa användare kan inte läggas till" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Något gick fel" @@ -31374,7 +31381,7 @@ msgstr "Ljudvolym" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Ljud" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Börja ladda upp bilagor så snart de läggs till i meddelandefältet" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Starta videosamtal" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Starta röstsamtal" @@ -31899,7 +31906,7 @@ msgstr "klistermärke" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Klistermärke: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Klistermärken" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Sluta lita på alla länkar?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Sluta använda lösennycklar för tvåfaktorsautentisering?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Ignorera alla rollomnämnanden" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Dölj inbäddningar" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "textkanal" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Textkanal" @@ -33055,7 +33062,7 @@ msgstr "Sms:a oss från din telefon" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Text till tal" @@ -33119,6 +33126,11 @@ msgstr "Åtgärden slutfördes inte. Du kan redan ha lämnat vissa communities o msgid "That did not go through. Nothing changed. Try again." msgstr "Det gick inte igenom. Ingenting har ändrats. Försök igen." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Det fungerade inte. Försök igen eller avbryt." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Det där ser inte ut som en giltig färg. Prova hex, rgb(), hsl() eller ett CSS-färgnamn." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Bilden kunde inte användas. Prova en annan fil." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Bilden är ogiltig. Försök med en annan." @@ -34035,11 +34047,11 @@ msgstr "Det här är beskrivningen för det andra alternativet" msgid "This is the third option description" msgstr "Det här är beskrivningen för det tredje alternativet" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Det här är din sista lösennyckel, och lösennycklar är din andra faktor. Om du tar bort den stängs tvåfaktorsautentiseringen av för ditt konto, och dina nuvarande reservkoder slutar fungera." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Det här är din sista lösennyckel. När den är borta kan du inte längre använda en lösennyckel som din andra faktor." @@ -34154,16 +34166,6 @@ msgstr "Den här deltagarens ljud är avstängt" msgid "This participant was deafened by moderators" msgstr "Moderatorerna stängde av den här deltagarens ljud" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Den här begäran om lösennyckel kunde inte verifieras. Stäng fönstret och försök igen." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Den här begäran om lösennyckel tog för lång tid. Stäng fönstret och försök igen." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Detta tar bort alla betrodda domäner. Du kommer att se varningen för e msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Detta tar bort alla anpassade genvägar och återaktiverar alla inbyggda genvägar. Detta kan inte ångras." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Den här begäran har gått ut. Gå tillbaka och försök igen." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Den här återställningslänken har gått ut. Återställningslänkar är giltiga i 1 timme. Vänligen begär en ny." @@ -34807,7 +34814,7 @@ msgstr "Överför gruppägarskapet till {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Överför ägarskap" @@ -34823,7 +34830,7 @@ msgstr "Överlät ägarskapet till {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Översätt" @@ -34980,7 +34987,7 @@ msgstr "Prova ett annat variabelnamn eller rensa sökningen." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Försök igen" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Försök igen" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Försök igen om en liten stund." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Prova att söka efter något som ”tema”, ”aviseringar” eller ”integritet”" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Prova säkerhetsnyckel/lösennyckel i stället" @@ -35088,7 +35095,7 @@ msgstr "Turkiska" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Stäng av" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Stäng av ljuddelning för den här källan eller försök igen om en stund." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Stäng av kameran" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Stäng av sekretess vid sändning innan du visar inloggningsuppgifter eller information om kontosäkerhet." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Slå på" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Tvåfaktorsautentisering" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Tvåfaktorsautentisering" @@ -35288,7 +35295,7 @@ msgstr "Tvåfaktorsautentisering inaktiverad" msgid "Two-factor authentication enabled" msgstr "Tvåfaktorsautentisering aktiverad" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Tvåfaktorsautentisering är aktiverad" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Avblockera användare" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Okategoriserade" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Understryk webbadresser" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Jag förstår" @@ -35643,7 +35650,7 @@ msgstr "Universell reserv. Lägsta kvalitet, men fungerar överallt." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Slå på mikrofonen på alla enheter" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Sluta tysta kategorin" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Sluta tysta communities" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Sluta tysta communityn" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Sluta tysta DM-konversationer" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Sluta tysta favoriter" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Lossa det" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Lossa meddelande" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Vill du ta bort fästningen för det här meddelandet?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "DM-konversationen lossad" @@ -36193,6 +36200,11 @@ msgstr "Uppdatera e-postadress" msgid "Update my status" msgstr "Uppdatera min status" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Uppdatera lösennyckel" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Uppdatera timeout" msgid "Update your own nickname." msgstr "Uppdatera ditt eget smeknamn." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Uppdatera din lösennyckel" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Använd en särskild dialog för att ange ett gränsdatum för meddeland msgid "Use a different email address and verify it with a code." msgstr "Använd en annan e-postadress och verifiera den med en kod." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Använd en lösennyckel från en lösenordshanterare" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Använd faktiskt värde" msgid "Use alternative method" msgstr "Använd en annan metod" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Använd en autentiseringsapp för att generera koder för tvåfaktorsautentisering" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Använd endast om det tydligt bryter mot {productName}s regler och inte passar in ovan." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Använd lösennycklar för tvåfaktorsautentisering?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Använd lösennycklar för att logga in utan lösenord" @@ -36824,8 +36836,8 @@ msgstr "Använd röstaktivering" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Använd operativsystemets stavningskontroll när den är tillgänglig. Annars används de inbyggda ordlistorna i {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Använd din lösennyckel" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Användarkontroller" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Användarfelsökning" @@ -36972,7 +36984,7 @@ msgstr "Användarvolym" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Verifiering avbruten" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Verifieringskod" @@ -37185,7 +37197,7 @@ msgstr "Verifieringsmejl skickat. Kolla din inkorg." msgid "Verification expired" msgstr "Verifieringen har upphört att gälla" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Verifierad community" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Verifiera" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Verifiera anslutning" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Verifiera e-postadress" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Formulär för identitetsverifiering" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Verifiera att det är du" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Verifiera din e-postadress för att skicka vänförfrågningar." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Verifiera din e-postadress innan du lägger till en lösennyckel." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Verifiera din e-postadress innan du lägger till en autentiseringsapp." @@ -37571,7 +37583,7 @@ msgstr "Visa och hantera bannlysta användare." msgid "View and manage every webhook configured across your community." msgstr "Visa och hantera alla webhooks som konfigurerats för din community." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Visa och hantera dina reservkoder för kontoåterställning" @@ -37605,7 +37617,7 @@ msgstr "Visa kanal" msgid "View channel members" msgstr "Visa kanalmedlemmar" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Visa koder" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Visa abonnemang" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Visa profil" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "röstkanal" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Röstkanal" @@ -38073,7 +38085,7 @@ msgstr "Ogiltig" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Vänta här" msgid "Waiting for connection..." msgstr "Väntar på anslutning…" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Väntar på lösennyckel…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Titta" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Titta på sändning" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Förhandsvisningar av webbplatser" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Välkommen tillbaka" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Du är inte med i några communities just nu." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Du har blockerat {userName}. Du kan inte skicka meddelanden om du inte avblockerar hen." @@ -39101,6 +39113,11 @@ msgstr "Du kan avbryta raderingen inom 14 dagar" msgid "You can close this modal. The import will continue in the background." msgstr "Du kan stänga den här rutan. Importen fortsätter i bakgrunden." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Du kan stänga den här fliken" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Du kan nu stänga den här fliken och återgå till appen." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Du kan inte skicka en vänförfrågan till dig själv." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Du kan inte skicka meddelanden i den här kanalen." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Du behöver fortfarande slutföra e-poststeget." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Vi ber dig inte längre om en lösennyckel efter ditt lösenord. Din autentiseringsapp är kvar som din andra faktor." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Du måste logga in igen på alla utloggade enheter" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Du behöver en av dina lösennycklar för att logga in på en ny enhet. Om du förlorar alla dina lösennycklar kan du bli utelåst från ditt konto. Reservkoder sparas åt dig så att du fortfarande har en väg in." @@ -39918,12 +39935,12 @@ msgstr "Ditt konto är för nytt för att skicka meddelanden i den här communit msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Din kontobegäran väntar på godkännande. Du kan logga in efter att en administratör har godkänt den." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Ditt konto kräver multifaktorautentisering, men ingen metod som stöds är konfigurerad på den här enheten. Logga in på en enhet med din autentiseringsapp eller säkerhetsnyckel eller kontakta supporten." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Ditt konto skyddas inte längre av tvåfaktorsautentisering när du loggar in med ditt lösenord. Du kommer också att förlora förhöjda behörigheter i communities som kräver tvåfaktorsautentisering." @@ -39941,16 +39958,6 @@ msgstr "Din åtgärd kunde inte slutföras eftersom den flaggades av våra säke msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Din ansökan väntar på granskning. Du kan fortfarande uppdatera listningens uppgifter eller dra tillbaka ansökan." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Webbläsaren blockerade popup-fönstret för lösennyckeln. Tillåt popup-fönster för den här webbplatsen och försök igen." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Webbläsaren stöder inte lösennycklar på den här domänen. Uppdatera webbläsaren eller logga in med ditt lösenord och din tvåfaktorskod." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Din community behöver minst {minMemberCount, plural, one {# medlem} oth msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Ditt kreditkort har kontrollerats. Om kortet är giltigt kommer vuxet innehåll att låsas upp inom kort. Du kan stänga den här fliken och återgå till appen." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Din enhet kommer att be dig spara en uppdaterad lösennyckel för {name}. Den ersätter den gamla." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Din enhet kommer att be dig spara en uppdaterad lösennyckel för {name}. Använd samma telefon eller säkerhetsnyckel som du precis använde." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Zooma" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Zooma in" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/th/messages.po b/fluxer_app/src/features/i18n/locales/th/messages.po index 674652b95..8c7578245 100644 --- a/fluxer_app/src/features/i18n/locales/th/messages.po +++ b/fluxer_app/src/features/i18n/locales/th/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {คน} other {คน}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, other {การกล่าวถึง # ครั้ง}}" @@ -2370,8 +2370,8 @@ msgstr "6 เดือน" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "รหัส 6 หลัก" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "การตั้งค่าบัญชีและพรีเมียม" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "การเข้าถึงบัญชี" @@ -2807,7 +2807,7 @@ msgstr "ผู้สมัครสมาชิกรายเดือนที #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "เพิ่มบัญชีเพื่อดำเนินการ msgid "Add an email and password to your account first." msgstr "เพิ่มอีเมลและรหัสผ่านลงในบัญชีของคุณก่อน" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "เพิ่มความปลอดภัยอีกขั้นให้กับบัญชีของคุณ" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "เพิ่มบอทไปยังปลายทาง" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "เพิ่มช่อง" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "เพิ่มรีแอ็กชันใหม่ให้ข้อความ" #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "เพิ่มโน้ต" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "เพิ่มการตั้งค่าเฉพาะ" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "เพิ่มพาสคีย์" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "เพิ่มรีแอ็กชัน" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "เพิ่มในพจนานุกรม" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "เพิ่มในรายการโปรด" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "เพิ่มไปยัง GIF รายการโปรดแล้ว" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "เพิ่มในรายการโปรดแล้ว" @@ -3296,11 +3296,11 @@ msgstr "เพิ่มในรายการโปรดแล้ว" msgid "Added to saved media" msgstr "เพิ่มไปยังสื่อที่บันทึกไว้แล้ว" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "เพิ่มเมื่อ: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "เพิ่มเมื่อ: {createdDate} • ใช้งานล่าสุด: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "ทุกภาษา" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "ข้อความทั้งหมด" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "ถูกลบไปแล้ว" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "มีบัญชีอยู่แล้วใช่ไหม" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "ซูมแอป" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "ระดับการซูมของแอป" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "อนุมัติ" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "อนุมัติแอปนี้จากแอป {productName} ที่คุณใช้อยู่แล้ว ไม่ต้องใช้รหัสผ่าน" @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "คุณแน่ใจหรือไม่ว่าต้องการลบหมวดหมู่ \"{categoryName}\"? การดำเนินการนี้ไม่สามารถเลิกทำได้" #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "คุณแน่ใจหรือไม่ว่าต้องการลบพาสคีย์ <0>{0}" @@ -4493,7 +4493,7 @@ msgstr "คุณแน่ใจหรือไม่ว่าต้องกา msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "คุณแน่ใจหรือไม่ว่าต้องการลบคอมมูนิตี้นี้ การดำเนินการนี้ไม่สามารถยกเลิกได้ ทุกช่อง ข้อความ และการตั้งค่าจะถูกลบอย่างถาวร" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "คุณแน่ใจหรือไม่ว่าต้องการลบพาสคีย์นี้" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "ถามก่อนเริ่มโทร" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "ขอพาสคีย์ต่อจากรหัสผ่านของคุณเมื่อคุณลงชื่อเข้าใช้" @@ -4690,7 +4690,7 @@ msgstr "ไฟล์แนบ" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "เสียง" @@ -4851,14 +4851,14 @@ msgstr "การยืนยันตัวตน" msgid "Authenticator" msgstr "แอปยืนยันตัวตน" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "แอปยืนยันตัวตน" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "รหัสยืนยันตัวตน" @@ -4928,7 +4928,7 @@ msgstr "แอปพลิเคชันที่ได้รับอนุญ #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "ไม่อยู่ตอนนี้" msgid "Back" msgstr "ย้อนกลับ" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "กลับไปที่ {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "กลับไปที่บทบาท" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "กลับไปที่การตั้งค่า" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "กลับสู่หน้าลงชื่อเข้าใช้" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "รหัสสำรอง" @@ -5351,7 +5356,7 @@ msgstr "รหัสสำรอง" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "ถึงขีดจำกัดบุ๊กมาร์กแล้ว #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "การโทร" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "ปิดกล้อง" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "เปิดกล้อง" @@ -6364,9 +6369,9 @@ msgstr "อัปโหลดไฟล์ที่นี่ไม่ได้" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "อัปโหลดไฟล์ที่นี่ไม่ได้" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "เปลี่ยนอิโมจิ" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "เปลี่ยนชื่อเล่นเพื่อน" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "เปลี่ยนชื่อเล่นของฉันในกลุ่ม" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "เปลี่ยนชื่อเล่น" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "การดำเนินการของช่อง" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "เพิ่มช่องไปยังรายการโปรดแล้ว" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "สร้างช่องแล้ว" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "แก้ไขข้อผิดพลาดของช่อง" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "ช่องถูกลบแล้ว" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "บันทึกช่อง" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "นำช่องออกจากรายการโปรดแล้ว" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "เลือกสีโปรไฟล์ของคุณ" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "ยืนยันบัญชี" @@ -7715,7 +7720,7 @@ msgstr "ยืนยันบัญชีและอีเมลของคุ msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "ยืนยันบัญชีของคุณด้วยการเพิ่มอีเมลและรหัสผ่าน เราจะส่งรหัสยืนยันเพื่อยืนยันอีเมลของคุณก่อนดำเนินการต่อ" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "ยืนยันบัญชีของคุณเพื่อเข้าถึงฟีเจอร์ความปลอดภัย เช่น การยืนยันตัวตนแบบสองชั้นและพาสคีย์" @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "ล้าง CSS ด่วนใช่หรือไม่" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "ล้างการค้นหา" @@ -8103,7 +8108,7 @@ msgstr "ปิดการโคลนแล้ว" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "ปิด" @@ -8160,11 +8165,9 @@ msgstr "ย่อไปที่แถบเมนู" msgid "Close to tray" msgstr "ย่อไปที่ถาดระบบ" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "ปิดหน้าต่าง" @@ -8456,7 +8459,7 @@ msgstr "การสื่อสาร" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "แก้ไขข้อผิดพลาดของคอมมูนิตี้" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "ค่าเริ่มต้นของคอมมูนิตี้" @@ -8577,7 +8580,7 @@ msgstr "ข้อมูลสมาชิกคอมมูนิตี้" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "สมาชิกคอมมูนิตี้" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "ระดับการแจ้งเตือนของคอมมูนิตี้" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "การตั้งค่าการแจ้งเตือนของคอมมูนิตี้" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "เปรียบเทียบ" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "ดำเนินการตรวจสอบเนื้อหาสำหรับผู้ใหญ่ให้เสร็จสิ้น" @@ -9093,7 +9096,7 @@ msgstr "การเชื่อมต่อ: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "เมนูบริบทสามารถเปิดได้ด้ #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "ดำเนินการต่อ" msgid "Continue to checkout" msgstr "ดำเนินการชำระเงิน" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "ดำเนินการต่อเพื่อสร้างพาสคีย์สำหรับ {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "ดำเนินการรายงานคอมมูนิตี msgid "Continue to report user" msgstr "ดำเนินการรายงานผู้ใช้ต่อ" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "ดำเนินการต่อด้วยพาสคีย์" @@ -9238,11 +9238,6 @@ msgstr "ดำเนินการต่อด้วยพาสคีย์" msgid "Continue with SSO" msgstr "ดำเนินการต่อด้วย SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "ดำเนินการต่อด้วยพาสคีย์ของคุณเพื่อลงชื่อเข้าใช้ {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "ประสานงานการโจมตี การรุม #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "คัดลอกแล้ว" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "คัดลอก ID หมวดหมู่" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "คัดลอก ID ช่อง" @@ -9421,12 +9416,12 @@ msgstr "คัดลอกลิงก์ช่อง" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "คัดลอกรหัส" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "คัดลอก ID คอมมูนิตี้" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "คัดลอก URL คำเชิญ" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "คัดลอกข้อความ" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "คัดลอก ID ข้อความ" @@ -9570,7 +9565,7 @@ msgstr "คัดลอก ID ข้อความ" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "คัดลอก URL สติกเกอร์" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "คัดลอกคีย์สำหรับการตั้งค #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "คัดลอก ID ผู้ใช้" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "คัดลอกชื่อผู้ใช้" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "ไม่สามารถลบแอปพลิเคชันได้" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "ลบพาสคีย์ไม่ได้" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "ส่งคำเชิญไม่ได้" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "ส่งคำเชิญไม่ได้ ลองอีกครั้ง" @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "ไม่สามารถอัปเดตการข้ามการระงับการกล่าวถึงได้" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "อัปเดตการยืนยันตัวตนแบบสองชั้นด้วยพาสคีย์ไม่ได้" @@ -10206,6 +10201,11 @@ msgstr "ไม่สามารถอัปเดตข้อความอธ msgid "Couldn't update voice activity sharing right now" msgstr "ไม่สามารถอัปเดตการแชร์กิจกรรมเสียงได้ในขณะนี้" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "ไม่สามารถอัปเดตพาสคีย์ของคุณได้ ลองอีกครั้ง" + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "อัปโหลดรูปโปรไฟล์ไม่ได้" msgid "Couldn't upload banner" msgstr "อัปโหลดแบนเนอร์ไม่ได้" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "ไม่สามารถใช้พาสคีย์ของคุณในหน้าต่างป๊อปอัปได้ ลองอีกครั้ง" - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "ยืนยันรหัสไม่ได้ ลองอีกค msgid "Couldn't verify the connection" msgstr "ยืนยันการเชื่อมต่อไม่ได้" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "ยืนยันด้วยพาสคีย์ไม่ได้ โปรดลองอีกครั้ง" @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "โปร่งสบาย" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "สร้าง" @@ -10298,7 +10293,7 @@ msgstr "สร้างกลุ่มใหม่กับ {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "สร้างแอปพลิเคชัน" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "สร้างหมวดหมู่" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "สร้างช่อง" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "สร้างคอมมูนิตี้" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "ข้อความเตือนที่กำหนดเอง" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "กำหนดเอง…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "ดีบัก" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "ดีบักช่อง" @@ -11164,7 +11159,7 @@ msgstr "ดีบักข้อความ" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "ดีบักผู้ใช้" @@ -11315,7 +11310,7 @@ msgstr "เดลาแวร์" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "ลบ {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "ลบบัญชี" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "ลบแอปพลิเคชัน" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "ลบไฟล์แนบ" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "ลบสื่อ" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "ลบข้อความ" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "ลบข้อความของสมาชิกคนอื่นได้ การปักหมุดข้อความจะถูกควบคุมแยกต่างหาก" #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "ลบพาสคีย์" @@ -11701,7 +11696,7 @@ msgstr "อธิบายเกี่ยวกับคอมมูนิตี #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "คำอธิบาย" @@ -11966,7 +11961,7 @@ msgstr "อุปกรณ์:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "อินพุตโดยตรง" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "ข้อความส่วนตัว" @@ -12050,7 +12045,7 @@ msgstr "แสดงตัวอย่างข้อความส่วนต #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "ข้อความส่วนตัว" @@ -12077,14 +12072,14 @@ msgstr "เปิดอัปโหลดโดยตรงอยู่" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "ปิด" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "ปิดใช้งานบัญชี" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "ไม่ได้เชื่อมต่อ" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "คอมมูนิตี้ที่เปิดให้ค้นพบได้" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Discriminator" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "ปิด" @@ -12477,7 +12472,7 @@ msgstr "การตั้งค่าข้อความส่วนตัว #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "ปิดข้อความส่วนตัวแล้ว" @@ -12607,7 +12602,7 @@ msgstr "ไม่บล็อก คุณสามารถเปิดให #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "โดเมน" @@ -12697,7 +12692,7 @@ msgstr "ดับเบิลคลิกที่ผู้ใช้เพื่ #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "ดัตช์" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "เช่น YubiKey, iPhone, คอมพิวเตอร์ที่ทำงาน" @@ -13092,7 +13087,7 @@ msgstr "แก้ไขการตั้งค่าทั่วไป เช #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "แก้ไขกลุ่ม" @@ -13123,7 +13118,7 @@ msgstr "แก้ไขสื่อ" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "แก้ไขข้อความ" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "มีสิทธิ์ได้รับเงินคืนจนถึงวันที่ {windowEndsOn} การดำเนินการนี้จะยกเลิกการสมัครสมาชิกของคุณทันทีด้วย" #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "อีเมล" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "อัปเดตอิโมจิแล้ว" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "อิโมจิ" @@ -13525,7 +13520,7 @@ msgstr "รายการโปรดว่างเปล่า" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "เปิดใช้งาน" @@ -13680,7 +13675,7 @@ msgstr "เปิดการแจ้งเตือนแบบพุชบน #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "เปิดการแจ้งเตือน" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "เปิดใช้งานการผสานรวมที่คุณได้กำหนดค่าข้อมูลประจำตัวไว้แล้ว จะแสดงเฉพาะบริการที่พร้อมใช้งานเท่านั้น" #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "เปิดใช้งานการยืนยันตัวตนแบบสองชั้น" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "อังกฤษ (สหรัฐอเมริกา)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "ปรับปรุงแล้ว" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "ป้อนอีเมลใหม่" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "ป้อนรหัสสำรองของคุณหนึ่งรหัส หากคุณใช้พาสคีย์ไม่ได้" #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "ป้อนรหัสสำรองของคุณหนึ่งรหัส" @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "ป้อนข้อความ" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "ป้อนรหัส {digitCount} หลักจากแอปยืนยันตัวตนของคุณหรือรหัสสำรอง" @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "ป้อนรหัสก่อนดำเนินการต่อ" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "ป้อนรหัสจากแอปยืนยันตัวตนของคุณ" @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "ป้อนชื่อของคุณ" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "ป้อนรหัสผ่านของคุณ" @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "หมดอายุเมื่อ <0>{expiredDate} <1/> ใช้งานไม่ได้แล้ว คุณสามารถสมัครใหม่ได้ทุกเมื่อ" #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "หมดอายุ" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "เติมอิโมจิอัตโนมัติ" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "หมวดหมู่ตัวเลือกอิโมจิ" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "เตรียมอิโมจิไม่สำเร็จ" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "ประมวลผลรูปภาพที่ครอบตัดไม่สำเร็จ โปรดลองอีกครั้ง" @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "เริ่ม SSO ไม่สำเร็จ" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "เปลี่ยนบัญชีไม่สำเร็จ" @@ -15053,7 +15048,7 @@ msgstr "รายการโปรด" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "รายการโปรด" @@ -15268,6 +15263,11 @@ msgstr "ตั้งค่าบัญชีให้เสร็จสิ้น msgid "Finish account setup first" msgstr "ตั้งค่าบัญชีให้เสร็จก่อน" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "ดำเนินการให้เสร็จในแท็บใหม่ หากคุณปิดไปแล้ว ให้กด \"ดำเนินการต่อด้วยพาสคีย์\" อีกครั้ง" + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "ชื่อโฟลเดอร์" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "การตั้งค่าโฟลเดอร์" @@ -15479,7 +15479,7 @@ msgstr "สำหรับฉัน" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "สำหรับการตรวจสอบนี้ คุณจะต้องส่งข้อความถึงเราแทนการรับข้อความจากเรา" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "เพื่อความปลอดภัย โปรดยืนยันตัวตนเพื่อดำเนินการต่อ" @@ -15606,7 +15606,7 @@ msgstr "ลืมรหัสผ่าน" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "ลืมรหัสผ่านใช่ไหม" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "เฉพาะเพื่อนและคอมมูนิตี้ขนาดเล็ก" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "เพื่อนของเพื่อน" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "ทั่วไป" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "เยอรมนี" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "รับ {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URL ของ GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "ปุ่มลัดทั่วทั้งระบบ" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "ย้อนกลับ" @@ -16374,6 +16374,11 @@ msgstr "ย้อนกลับ" msgid "Go back and enter a valid email." msgstr "กลับไปป้อนอีเมลที่ถูกต้อง" +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "กลับไปที่ {productName} เพื่อดำเนินการต่อ" + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "ซ่อนหมายเหตุวันหมดอายุ" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "ซ่อนรายการโปรด" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "ซ่อนที่ปิดเสียง" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "ซ่อนช่องที่ปิดเสียง" @@ -17358,7 +17363,7 @@ msgstr "ข้อมูลส่วนตัว" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "ไม่ได้ใช้งาน" @@ -17818,7 +17823,7 @@ msgstr "โปรไฟล์ไม่เหมาะสม" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "กล่องข้อความ" @@ -17867,7 +17872,7 @@ msgstr "ระบุ ID คอมมูนิตี้" #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "ตัวอย่างหน้าเชิญ" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "เชิญผู้คน" @@ -18456,7 +18461,7 @@ msgstr "ผู้เชิญ:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "คำเชิญ" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "เข้าร่วมสาย" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "เข้าร่วมคอมมูนิตี้" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "เข้าร่วม {productName} เมื่อ" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "ข้ามไป" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "เตะสมาชิกออกจากคอมมูนิตี้นี้" #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "เตะสมาชิก" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "ออกจากการโทร" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "ออกจากคอมมูนิตี้" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "สร้างลิงก์" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "คัดลอกลิงก์แล้ว" @@ -19859,8 +19864,8 @@ msgstr "มัลแวร์หรือลิงก์อันตราย" msgid "Malware, credential theft, or harmful files." msgstr "มัลแวร์, การขโมยข้อมูลประจำตัว หรือไฟล์อันตราย" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "จัดการ" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "จัดการบัญชี" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "จัดการแอปและอุปกรณ์ที่เข้าถึงบัญชีของคุณ" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "ทำเครื่องหมายช่องที่ยังไม่ได้อ่านทั้งหมดในกล่องข้อความว่าอ่านแล้วทันที โดยไม่ต้องยืนยัน" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "ทำเครื่องหมายว่าอ่านแล้ว" @@ -20021,7 +20026,7 @@ msgstr "ทำเป็นสปอยล์" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "ทำเครื่องหมายว่ายังไม่ได้อ่าน" @@ -20169,7 +20174,7 @@ msgstr "คอมมูนิตี้สำหรับผู้ใหญ่" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "เนื้อหาสำหรับผู้ใหญ่" @@ -20315,7 +20320,7 @@ msgstr "กำลังวัด…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "สมาชิก" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "สมาชิก" @@ -20616,7 +20621,7 @@ msgstr "กล่าวถึงบทบาทนี้ใช่ไหม" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "การกล่าวถึง" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "การดำเนินการกับสื่อเพิ่มเติม" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "ตัวเลือกเพิ่มเติม" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "ปิดเสียงการโทร" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "ปิดเสียงหมวดหมู่นี้" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "ปิดเสียงคอมมูนิตี้ทั้งหมด" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "ปิดเสียงคอมมูนิตี้" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "ปิดเสียงเข้าห้อง" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "ปิดเสียงรายการโปรด" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "ชื่อต้องมีอย่างน้อย 2 ตัวอักษร" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "ตั้งชื่อพาสคีย์" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "แบบฟอร์มตั้งชื่อพาสคีย์" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "เนแบรสกา" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "ยังไม่มีบัญชีใช่ไหม" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "เนวาดา" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "ไม่เลย" @@ -22276,7 +22281,7 @@ msgstr "ใหม่สุดขึ้นก่อน" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "ถัดไป" @@ -22905,7 +22910,7 @@ msgstr "ไม่พบผู้ใช้" msgid "No verification is required." msgstr "ไม่ต้องยืนยันตัวตน" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "ไม่มีวิธีการยืนยันตัวตน" @@ -23038,11 +23043,13 @@ msgstr "ไม่พบหน้า" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "ไม่ใช่ตอนนี้" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "โน้ต (คุณเห็นคนเดียว)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "ไม่แจ้งเตือน" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "การตั้งค่าการแจ้งเตือนเฉพาะกลุ่ม" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "การตั้งค่าการแจ้งเตือน" @@ -23152,7 +23159,7 @@ msgstr "ระดับเสียงการแจ้งเตือน" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "ปิด" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "ออฟไลน์" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "ตกลง" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "ตกลง" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "ออนไลน์" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "ออนไลน์" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "เฉพาะสมาชิกที่มีสิทธิ์ \"{manageCommunityPermissionLabel}\" เท่านั้นที่เปลี่ยนแปลงการตั้งค่านี้ได้" #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "เฉพาะการกล่าวถึง" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "เปิด {labelText} ในการตั้งค่า" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "เปิด {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "ข้อความส่วนตัวที่เปิดอยู่" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "เปิดข้อความส่วนตัว" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "เปิดใบแจ้งหนี้ {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "เปิดลิงก์" @@ -23850,7 +23857,7 @@ msgstr "เปิดตัวสลับด่วน" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "เปิดการตั้งค่า" @@ -23935,11 +23942,6 @@ msgstr "เปิดสตูดิโอธีมในหน้าต่าง msgid "Open theme studio…" msgstr "เปิดสตูดิโอธีม…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "เปิดหน้าต่างนี้จาก {productName} เพื่อใช้พาสคีย์ของคุณ" - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "ตัวเลือก" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "พาสคีย์" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "ชื่อพาสคีย์" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "อัปเดตพาสคีย์แล้ว" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "พาสคีย์" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "พาสคีย์ต้องใช้บันเดิล macOS ที่เซ็นรับรองแล้วและมีตัวระบุแอปพลิเคชันที่ถูกต้อง โปรดติดตั้งไคลเอ็นต์เดสก์ท็อปที่เซ็นรับรองแล้ว จากนั้นลองอีกครั้ง" #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "รหัสผ่าน" msgid "Password changed" msgstr "เปลี่ยนรหัสผ่านแล้ว" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "ตัวจัดการรหัสผ่านอาจไม่เสนอพาสคีย์ของคุณบนที่อยู่เว็บนี้ ลองใช้ในหน้าต่างป๊อปอัปบนที่อยู่เดิมแทน" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "วางลิงก์ข้อความ" #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "พจนานุกรมส่วนตัว" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "บันทึกส่วนตัว" @@ -24885,7 +24887,7 @@ msgstr "ปักหมุดแชทกลุ่ม" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "ปักหมุดข้อความ" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "ปักหมุดแล้ว" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "ปักหมุดข้อความส่วนตัวแล้ว" @@ -25020,7 +25022,7 @@ msgstr "ผู้ดูแลแพลตฟอร์ม" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "เล่น" @@ -25318,6 +25320,11 @@ msgstr "กดปุ่มบนคีย์บอร์ด เมาส์ ห msgid "Press a shortcut…" msgstr "กดปุ่มลัด…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "กด \"ดำเนินการต่อ\" เพื่อใช้พาสคีย์ของคุณ" + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "ภาษาหลัก" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "การนำทางหลัก" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "นโยบายความเป็นส่วนตัว" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "การตั้งค่าความเป็นส่วนตัว" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "เคล็ดลับ:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "ดำเนินการต่อ" @@ -26090,7 +26097,7 @@ msgstr "โต้ตอบด้วย {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "การสร้างใหม่จะทำให้โทเค็นปัจจุบันใช้ไม่ได้ โปรดอัปเดตโค้ดที่ใช้ค่าเดิม" #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "ลงทะเบียน" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "พาสคีย์ที่ลงทะเบียนแล้ว" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "ลบแบนเนอร์" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "ลบบุ๊กมาร์ก" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "ลบออกจากพจนานุกรม" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "นำออกจากรายการโปรด" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "นำออกจาก GIF รายการโปรดแล้ว" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "นำออกจากรายการโปรดแล้ว" @@ -27032,7 +27039,7 @@ msgstr "การนำสิทธิ์ออกอาจจำกัดฟี msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "การยกเลิกการพักการใช้งานชั่วคราวจะทำให้ <0>{targetUserTag} สามารถส่งข้อความ แสดงปฏิกิริยา และเข้าร่วมช่องเสียงได้อีกครั้ง" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "เปลี่ยนชื่อ" @@ -27119,7 +27126,7 @@ msgstr "การตอบกลับ" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "ตอบกลับ" @@ -27209,7 +27216,7 @@ msgstr "รายงานปัญหา" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "รายงานข้อความ" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "กำหนดให้ใช้ 2FA สำหรับการดำเนินการดูแล" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "กำหนดให้ใช้พาสคีย์เป็นการยืนยันชั้นที่สอง" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "ลิงก์รีเซ็ตไม่ถูกต้องหรือหมดอายุแล้ว" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "รีเซ็ตสถานะข้อตกลงเนื้อหาสำหรับผู้ใหญ่" @@ -27880,7 +27887,7 @@ msgstr "ค้นหารูปภาพ" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "ค้นหารูปภาพย้อนกลับ" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "ตรวจสอบและยืนยัน" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "ตรวจสอบแอปที่สามารถเข้าถึงบัญชีของคุณได้" @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "ดูประวัติการซื้อและตัวเลือกการคืนเงิน" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "ตรวจสอบอุปกรณ์ที่ลงชื่อเข้าใช้ และออกจากระบบสำหรับเซสชันที่คุณไม่รู้จัก" @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "อัปเดตบทบาทแล้ว" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "บทบาท" @@ -28261,7 +28268,7 @@ msgstr "ความอิ่มตัวของสี" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "ขอบเขต" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "ขอบเขตการเข้าถึง" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "โปรแกรมอ่านหน้าจอ" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "ค้นหาช่อง ผู้คน หรือคอมมูนิตี้" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "ค้นหาเพื่อน" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "ค้นหาข้อความที่เลือก" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "ค้นหาการตั้งค่า" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "ค้นหาการตั้งค่า…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "ความปลอดภัย" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "ฟีเจอร์ความปลอดภัย" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "คีย์ความปลอดภัย" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "คีย์ความปลอดภัย / พาสคีย์" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "สื่อที่ละเอียดอ่อน" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "ส่งแล้ว" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "เซสชัน" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "เซสชันของ {identifier} หมดอายุแล้ว โปรดลงชื่อเข้าใช้อีกครั้ง" @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "ตั้งค่าระดับเสียงสำหรับเอฟเฟกต์เสียงทั้งหมด การตั้งค่าเฉพาะเสียงจะข้ามการตั้งค่านี้" #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "เปิดการตั้งค่าแล้ว" #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "ส่วนการตั้งค่า" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "แถบด้านข้าง" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "ลงชื่อเข้าใช้" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "ลงชื่อเข้าใช้เพื่อรับของขวัญของคุณ" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "ลงชื่อเข้าใช้ด้วยเบราว์เซอร์" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "ลงชื่อเข้าใช้ด้วยพาสคีย์" @@ -30666,7 +30673,7 @@ msgstr "ลงชื่อเข้าใช้ด้วยผู้ให้บ #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "ออกจากระบบ" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "รายละเอียดการลงชื่อเข้าใช้" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "ขั้นตอนการลงชื่อเข้าใช้" @@ -31189,7 +31196,7 @@ msgstr "เพิ่มผู้ใช้บางคนไม่ได้" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "เกิดข้อผิดพลาด" @@ -31374,7 +31381,7 @@ msgstr "ระดับเสียง" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "เสียง" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "เริ่มอัปโหลดไฟล์แนบเมื่อเพิ่มลงในช่องข้อความ" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "เริ่มวิดีโอคอล" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "เริ่มโทรด้วยเสียง" @@ -31899,7 +31906,7 @@ msgstr "สติกเกอร์" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "สติกเกอร์: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "สติกเกอร์" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "เลิกเชื่อถือลิงก์ทั้งหมดหรือไม่" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "หยุดใช้พาสคีย์สำหรับการยืนยันตัวตนแบบสองชั้นหรือไม่" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "ปิดการแจ้งเตือนการกล่าวถึงบทบาททั้งหมด" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "ไม่แสดงตัวอย่างลิงก์" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "ช่องข้อความ" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "ช่องข้อความ" @@ -33055,7 +33062,7 @@ msgstr "ส่งข้อความหาเราจากโทรศัพ #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "การอ่านออกเสียงข้อความ" @@ -33119,6 +33126,11 @@ msgstr "การดำเนินการไม่เสร็จสมบู msgid "That did not go through. Nothing changed. Try again." msgstr "ไม่สำเร็จ ไม่มีอะไรเปลี่ยนแปลง ลองอีกครั้ง" +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "ไม่สำเร็จ ลองอีกครั้ง หรือยกเลิก" + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "ดูเหมือนจะไม่ใช่สีที่ถูกต้อง ลองใช้โค้ดสีแบบ hex, rgb(), hsl() หรือชื่อสีของ CSS" @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "รูปภาพนั้นไม่สามารถใช้งานได้ ลองใช้ไฟล์อื่น" #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "รูปภาพนี้ไม่ถูกต้อง ลองใช้รูปอื่น" @@ -34035,11 +34047,11 @@ msgstr "นี่คือคำอธิบายตัวเลือกที msgid "This is the third option description" msgstr "นี่คือคำอธิบายตัวเลือกที่สาม" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "นี่คือพาสคีย์สุดท้ายของคุณ และพาสคีย์คือการยืนยันชั้นที่สองของคุณ การลบพาสคีย์นี้จะปิดการยืนยันตัวตนแบบสองชั้นของบัญชีคุณ และรหัสสำรองปัจจุบันของคุณจะใช้งานไม่ได้อีกต่อไป" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "นี่คือพาสคีย์สุดท้ายของคุณ เมื่อลบแล้ว คุณจะไม่สามารถใช้พาสคีย์เป็นการยืนยันชั้นที่สองได้" @@ -34154,16 +34166,6 @@ msgstr "ผู้เข้าร่วมรายนี้ปิดเสีย msgid "This participant was deafened by moderators" msgstr "ผู้เข้าร่วมรายนี้ถูกผู้ดูแลปิดเสียงทั้งหมด" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "ไม่สามารถยืนยันคำขอพาสคีย์นี้ได้ โปรดปิดหน้าต่างนี้แล้วลองอีกครั้ง" - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "คำขอพาสคีย์นี้หมดเวลาแล้ว ปิดหน้าต่างนี้แล้วลองอีกครั้ง" - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "การดำเนินการนี้จะลบโดเมน msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "การดำเนินการนี้จะลบปุ่มลัดที่กำหนดเองทั้งหมดและเปิดใช้งานปุ่มลัดในตัวทั้งหมดอีกครั้ง การดำเนินการนี้ไม่สามารถเลิกทำได้" +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "คำขอนี้หมดอายุแล้ว กลับไปลองใหม่อีกครั้ง" + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "ลิงก์รีเซ็ตนี้หมดอายุแล้ว ลิงก์รีเซ็ตมีอายุ 1 ชั่วโมง โปรดขอลิงก์ใหม่" @@ -34807,7 +34814,7 @@ msgstr "โอนความเป็นเจ้าของกลุ่มใ #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "โอนความเป็นเจ้าของ" @@ -34823,7 +34830,7 @@ msgstr "โอนความเป็นเจ้าของให้ {0} แ #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "แปลภาษา" @@ -34980,7 +34987,7 @@ msgstr "ลองใช้ชื่อตัวแปรอื่นหรือ #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "ลองอีกครั้ง" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "ลองอีกครั้ง" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "ลองอีกครั้งในอีกสักครู่" @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "ลองค้นหาด้วยคำว่า \"ธีม\", \"การแจ้งเตือน\" หรือ \"ความเป็นส่วนตัว\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "ลองใช้คีย์ความปลอดภัย/พาสคีย์แทน" @@ -35088,7 +35095,7 @@ msgstr "ตุรกี" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "ปิด" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "ปิดการแชร์เสียงสำหรับแหล่งที่มานี้ หรือลองอีกครั้งในอีกสักครู่" #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "ปิดกล้อง" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "ปิดความเป็นส่วนตัวในการสตรีมก่อนดูรายละเอียดการเข้าสู่ระบบหรือความปลอดภัยของบัญชี" #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "เปิดใช้งาน" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "การยืนยันตัวตนสองชั้น" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "การยืนยันตัวตนแบบสองชั้น" @@ -35288,7 +35295,7 @@ msgstr "ปิดการยืนยันตัวตนแบบสองช msgid "Two-factor authentication enabled" msgstr "เปิดใช้งานการยืนยันตัวตนแบบสองชั้นแล้ว" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "เปิดใช้งานการยืนยันตัวตนแบบสองชั้นแล้ว" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "เลิกบล็อกผู้ใช้" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "ไม่ได้จัดหมวดหมู่" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "ขีดเส้นใต้ลิงก์เว็บไซต์" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "รับทราบ" @@ -35643,7 +35650,7 @@ msgstr "ตัวเลือกสำรองแบบครอบคลุม #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "เปิดไมโครโฟนทุกอุปกรณ์" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "เลิกปิดเสียงหมวดหมู่" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "เลิกปิดเสียงคอมมูนิตี้ทั้งหมด" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "เลิกปิดเสียงคอมมูนิตี้" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "เลิกปิดเสียงข้อความส่วนตัวทั้งหมด" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "เลิกปิดเสียงรายการโปรด" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "เลิกปักหมุด" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "เลิกปักหมุดข้อความ" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "เลิกปักหมุดข้อความนี้ใช่ไหม" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "เลิกปักหมุดข้อความส่วนตัวแล้ว" @@ -36193,6 +36200,11 @@ msgstr "อัปเดตอีเมล" msgid "Update my status" msgstr "อัปเดตสถานะของฉัน" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "อัปเดตพาสคีย์" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "อัปเดตการพักการใช้งานชั่ msgid "Update your own nickname." msgstr "อัปเดตชื่อเล่นของคุณ" +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "อัปเดตพาสคีย์ของคุณ" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "ใช้หน้าต่างเฉพาะเพื่อกำห msgid "Use a different email address and verify it with a code." msgstr "ใช้ที่อยู่อีเมลอื่นและยืนยันด้วยรหัส" -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "ใช้พาสคีย์จากตัวจัดการรหัสผ่าน" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "ใช้ค่าจริง" msgid "Use alternative method" msgstr "ใช้วิธีอื่น" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "ใช้แอปยืนยันตัวตนเพื่อสร้างรหัสสำหรับการยืนยันตัวตนแบบสองชั้น" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "ใช้ในกรณีที่ละเมิดกฎของ {productName} อย่างชัดเจนและไม่เข้าข่ายตามที่กล่าวมาข้างต้นเท่านั้น" #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "ใช้พาสคีย์สำหรับการยืนยันตัวตนแบบสองชั้นหรือไม่" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "ใช้พาสคีย์เพื่อลงชื่อเข้าใช้โดยไม่ต้องใช้รหัสผ่าน" @@ -36824,8 +36836,8 @@ msgstr "ใช้การตรวจจับเสียงพูด" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "ใช้เครื่องมือตรวจการสะกดของระบบปฏิบัติการของคุณเมื่อพร้อมใช้งาน หากไม่พร้อมใช้งาน ให้ใช้พจนานุกรมในแอปของ {productName}" -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "ใช้พาสคีย์ของคุณ" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "การควบคุมของผู้ใช้" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "แก้ไขข้อบกพร่องของผู้ใช้" @@ -36972,7 +36984,7 @@ msgstr "ระดับเสียงของผู้ใช้" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "ยกเลิกการยืนยันแล้ว" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "รหัสยืนยัน" @@ -37185,7 +37197,7 @@ msgstr "ส่งอีเมลยืนยันแล้ว โปรดต msgid "Verification expired" msgstr "การยืนยันหมดอายุแล้ว" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "คอมมูนิตี้ที่ยืนยันแล้ว" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "ยืนยัน" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "ยืนยันการเชื่อมต่อ" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "ยืนยันอีเมล" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "แบบฟอร์มยืนยันตัวตน" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "ยืนยันว่าเป็นคุณ" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "ยืนยันอีเมลเพื่อส่งคำขอเป็นเพื่อน" #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "ยืนยันอีเมลของคุณก่อนเพิ่มพาสคีย์" #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "ยืนยันอีเมลของคุณก่อนเพิ่มแอปยืนยันตัวตน" @@ -37571,7 +37583,7 @@ msgstr "ดูและจัดการผู้ใช้ที่ถูกแ msgid "View and manage every webhook configured across your community." msgstr "ดูและจัดการ webhook ทั้งหมดที่ตั้งค่าไว้ในคอมมูนิตี้ของคุณ" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "ดูและจัดการรหัสสำรองสำหรับกู้คืนบัญชีของคุณ" @@ -37605,7 +37617,7 @@ msgstr "ดูช่อง" msgid "View channel members" msgstr "ดูสมาชิกช่อง" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "ดูรหัส" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "ดูแพ็กเกจ" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "ดูโปรไฟล์" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "ช่องเสียง" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "ช่องเสียง" @@ -38073,7 +38085,7 @@ msgstr "เป็นโมฆะ" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "รอสักครู่" msgid "Waiting for connection..." msgstr "กำลังรอการเชื่อมต่อ..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "กำลังรอพาสคีย์…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "ดู" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "ดูสตรีม" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "แสดงตัวอย่างเว็บไซต์" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "ยินดีต้อนรับกลับมา" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "ขณะนี้คุณยังไม่ได้อยู่ในคอมมูนิตี้ใดๆ" #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "คุณบล็อก {userName} ไว้ คุณจะไม่สามารถส่งข้อความได้จนกว่าคุณจะเลิกบล็อก" @@ -39101,6 +39113,11 @@ msgstr "คุณสามารถยกเลิกขั้นตอนกา msgid "You can close this modal. The import will continue in the background." msgstr "คุณสามารถปิดหน้าต่างนี้ได้ การนำเข้าจะยังคงดำเนินต่อไปในเบื้องหลัง" +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "คุณสามารถปิดแท็บนี้ได้" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "ตอนนี้คุณสามารถปิดแท็บนี้และกลับไปที่แอปได้เลย" @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "คุณไม่สามารถส่งคำขอเป็นเพื่อนให้ตัวเองได้" #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "คุณไม่สามารถส่งข้อความในช่องนี้ได้" @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "คุณยังต้องดำเนินการยืนยันอีเมลให้เสร็จสิ้น" #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "เราจะไม่ขอพาสคีย์ต่อจากรหัสผ่านของคุณอีกต่อไป แอปยืนยันตัวตนของคุณจะยังคงเป็นการยืนยันชั้นที่สอง" @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "คุณจะต้องลงชื่อเข้าใช้อีกครั้งบนอุปกรณ์ทั้งหมดที่ลงชื่อออกไปแล้ว" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "คุณจะต้องใช้พาสคีย์ของคุณหนึ่งรายการเพื่อลงชื่อเข้าใช้บนอุปกรณ์ใหม่ หากคุณทำพาสคีย์หายทั้งหมด คุณอาจสูญเสียการเข้าถึงบัญชีของคุณอย่างถาวร เราจะบันทึกรหัสสำรองไว้ให้คุณ เพื่อให้คุณยังมีทางเข้าใช้บัญชีได้" @@ -39918,12 +39935,12 @@ msgstr "บัญชีของคุณใหม่เกินไปที่ msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "คำขอบัญชีของคุณกำลังรอการอนุมัติ คุณจะลงชื่อเข้าใช้ได้หลังจากผู้ดูแลระบบอนุมัติแล้ว" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "บัญชีของคุณต้องมีการยืนยันตัวตนแบบหลายปัจจัย แต่ยังไม่ได้ตั้งค่าวิธีการที่รองรับบนอุปกรณ์นี้ โปรดลงชื่อเข้าใช้บนอุปกรณ์ที่มีแอปยืนยันตัวตนหรือคีย์ความปลอดภัยของคุณ หรือติดต่อฝ่ายสนับสนุน" #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "บัญชีของคุณจะไม่ได้รับการปกป้องด้วยการยืนยันตัวตนแบบสองชั้นอีกต่อไปเมื่อคุณลงชื่อเข้าใช้ด้วยรหัสผ่าน และคุณจะสูญเสียสิทธิ์ระดับสูงในคอมมูนิตี้ที่กำหนดให้ใช้การยืนยันตัวตนแบบสองชั้นด้วย" @@ -39941,16 +39958,6 @@ msgstr "ดำเนินการไม่สำเร็จเนื่อง msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "ใบสมัครของคุณอยู่ระหว่างการตรวจสอบ คุณยังสามารถอัปเดตรายละเอียดประกาศหรือถอนใบสมัครได้" -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "เบราว์เซอร์ของคุณบล็อกหน้าต่างป๊อปอัปพาสคีย์ โปรดอนุญาตป๊อปอัปสำหรับไซต์นี้แล้วลองอีกครั้ง" - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "เบราว์เซอร์ของคุณไม่รองรับพาสคีย์บนโดเมนนี้ โปรดอัปเดตเบราว์เซอร์ของคุณ หรือลงชื่อเข้าใช้ด้วยรหัสผ่านและรหัสยืนยันตัวตนสองชั้น" - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "คอมมูนิตี้ของคุณต้องมีสม msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "เราได้ตรวจสอบบัตรเครดิตของคุณแล้ว หากบัตรถูกต้อง เนื้อหาสำหรับผู้ใหญ่จะปลดล็อกในไม่ช้า คุณสามารถปิดแท็บนี้และกลับไปที่แอปได้เลย" +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "อุปกรณ์ของคุณจะขอให้บันทึกพาสคีย์ที่อัปเดตสำหรับ {name} ซึ่งจะมาแทนที่พาสคีย์เดิม" + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "อุปกรณ์ของคุณจะขอให้บันทึกพาสคีย์ที่อัปเดตสำหรับ {name} ใช้โทรศัพท์หรือคีย์ความปลอดภัยเดิมที่คุณเพิ่งใช้" + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "ขยายหน้าต่าง" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "ซูมเข้า" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/tr/messages.po b/fluxer_app/src/features/i18n/locales/tr/messages.po index 17e944f6c..4598c8202 100644 --- a/fluxer_app/src/features/i18n/locales/tr/messages.po +++ b/fluxer_app/src/features/i18n/locales/tr/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {üye} other {üye}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# bahsetme} other {# bahsetme}}" @@ -2370,8 +2370,8 @@ msgstr "6 ay" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6 haneli kod" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Hesap ve premium geçersiz kılmaları" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Hesap erişimi" @@ -2807,7 +2807,7 @@ msgstr "Aktif aylık abone (iptal planlandı)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Devam etmek için bir hesap ekleyin." msgid "Add an email and password to your account first." msgstr "Önce hesabınıza bir e-posta ve parola ekleyin." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Hesabınıza ek bir güvenlik katmanı ekleyin" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Botu bir hedefe ekle" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Kanal ekle" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Mesajlara yeni tepkiler ekleyin." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Not ekle" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Geçersiz kılma ekle" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Geçiş anahtarı ekle" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Tepki ekle" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Sözlüğe ekle" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Favorilere ekle" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Favori GIF'lere eklendi" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Favorilere eklendi" @@ -3296,11 +3296,11 @@ msgstr "Favorilere eklendi" msgid "Added to saved media" msgstr "Kayıtlı medyaya eklendi" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Eklendi: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Eklendi: {createdDate} • son kullanım: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Tüm diller" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Tüm mesajlar" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Zaten silindi" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Zaten bir hesabınız var mı?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Uygulama yakınlaştırması" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Uygulama yakınlaştırma düzeyi" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Onayla" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Zaten kullandığınız {productName} uygulamasından bu uygulamayı onaylayın. Parola gerekmez." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "\"{categoryName}\" kategorisini silmek istediğinizden emin misiniz? Bu işlem geri alınamaz." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "<0>{0} geçiş anahtarını silmek istediğinizden emin misiniz?" @@ -4493,7 +4493,7 @@ msgstr "Bu eki silmek istediğinizden emin misiniz? Bu işlem geri alınamaz ve msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Bu topluluğu silmek istediğinizden emin misiniz? Bu işlem geri alınamaz. Tüm kanallar, mesajlar ve ayarlar kalıcı olarak silinecektir." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Bu geçiş anahtarını silmek istediğinizden emin misiniz?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Arama başlatmadan önce sor" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Oturum açarken parolanızdan sonra geçiş anahtarı da istensin" @@ -4690,7 +4690,7 @@ msgstr "Ekler" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Ses" @@ -4851,14 +4851,14 @@ msgstr "Kimlik doğrulama" msgid "Authenticator" msgstr "Kimlik doğrulayıcı" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Kimlik doğrulayıcı uygulama" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Kimlik doğrulayıcı kodu" @@ -4928,7 +4928,7 @@ msgstr "Yetkili uygulamalar" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Şu an uzakta" msgid "Back" msgstr "Geri" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "{productName}'e geri dön" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Rollere geri dön" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Ayarlara geri dön" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Giriş yapma ekranına geri dön" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Yedek kod" @@ -5351,7 +5356,7 @@ msgstr "Yedek kod" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Yer işareti sınırına ulaşıldı" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Aramalar" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Kamera kapalı" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Kamera açık" @@ -6364,9 +6369,9 @@ msgstr "Buraya dosya yüklenemiyor" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Buraya dosya yüklenemiyor" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Emojiyi değiştir" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Arkadaş takma adını değiştir" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Grup takma adımı değiştir" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Takma adı değiştir" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Kanal işlemleri" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Kanal favorilere eklendi" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Kanal oluşturuldu" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Kanal hata ayıklaması" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Kanal silindi" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Kanal kaydı" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Kanal favorilerden kaldırıldı" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Profil vurgu renginizi seçin" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Hesabı sahiplen" @@ -7715,7 +7720,7 @@ msgstr "Hesabınızı sahiplenin ve rapor göndermek için e-postanızı doğrul msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "E-posta ve parola ekleyerek hesabınızı sahiplenin. Bitirmeden önce e-postanızı onaylamak için bir doğrulama kodu göndereceğiz." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "İki faktörlü kimlik doğrulama ve geçiş anahtarları gibi güvenlik özelliklerine erişmek için hesabınızı sahiplenin." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Hızlı CSS temizlensin mi?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Aramayı temizle" @@ -8103,7 +8108,7 @@ msgstr "Klonlama kapalı" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Kapat" @@ -8160,11 +8165,9 @@ msgstr "Kapatınca menü çubuğuna küçült" msgid "Close to tray" msgstr "Kapatınca tepsiye küçült" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Pencereyi kapat" @@ -8456,7 +8459,7 @@ msgstr "İletişim" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Topluluk hata ayıklaması" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Topluluk varsayılanı" @@ -8577,7 +8580,7 @@ msgstr "Topluluk üyesi kaydı" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Topluluk üyeleri" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Topluluk bildirim düzeyi" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Topluluk bildirim ayarları" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Karşılaştırma" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Yetişkin içeriği kontrolünü tamamla" @@ -9093,7 +9096,7 @@ msgstr "Bağlantı: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Bağlam menüleri sol tıklama (düğmelerde) veya sağ tıklama (diğer #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Devam et" msgid "Continue to checkout" msgstr "Ödeme ekranına devam et" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "{host} için geçiş anahtarı oluşturmak üzere devam edin" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Topluluğu bildirmeye devam et" msgid "Continue to report user" msgstr "Kullanıcıyı bildirmeye devam et" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Geçiş anahtarıyla devam et" @@ -9238,11 +9238,6 @@ msgstr "Geçiş anahtarıyla devam et" msgid "Continue with SSO" msgstr "SSO ile devam et" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "{host} sitesinde giriş yapmak için geçiş anahtarınızla devam edin" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Kişilere veya topluluklara karşı baskın, toplu saldırı veya taciz #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Kopyalandı" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Kategori kimliğini kopyala" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Kanal kimliğini kopyala" @@ -9421,12 +9416,12 @@ msgstr "Kanal bağlantısını kopyala" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Kodu kopyala" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Topluluk kimliğini kopyala" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Davet URL'sini kopyala" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Mesajı kopyala" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Mesaj kimliğini kopyala" @@ -9570,7 +9565,7 @@ msgstr "Mesaj kimliğini kopyala" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Çıkartma URL'sini kopyala" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Kurulum anahtarını kimlik doğrulayıcı uygulamanıza kopyalayın." #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Kullanıcı kimliğini kopyala" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Kullanıcı adını kopyala" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Uygulama silinemedi" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Geçiş anahtarı silinemedi" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Davet gönderilemedi" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Davet gönderilemedi. Tekrar deneyin." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Bahsetme engellemeyi atlama güncellenemedi" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Geçiş anahtarıyla iki faktörlü kimlik doğrulama güncellenemedi" @@ -10206,6 +10201,11 @@ msgstr "Alternatif metin güncellenemedi. Lütfen tekrar deneyin." msgid "Couldn't update voice activity sharing right now" msgstr "Ses etkinliği paylaşımı şu anda güncellenemedi" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Geçiş anahtarınız güncellenemedi. Tekrar deneyin." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Avatar yüklenemedi" msgid "Couldn't upload banner" msgstr "Banner yüklenemedi" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Geçiş anahtarınız açılır pencerede kullanılamadı. Tekrar deneyin." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Bu kod doğrulanamadı. Tekrar deneyin." msgid "Couldn't verify the connection" msgstr "Bağlantı doğrulanamadı" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Geçiş anahtarıyla doğrulanamadı. Tekrar deneyin." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Rahat" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Oluştur" @@ -10298,7 +10293,7 @@ msgstr "{userName} ile yeni bir grup oluştur" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Uygulama oluştur" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Kategori oluştur" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Kanal oluştur" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Topluluk oluştur" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Özel uyarı metni" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Özel…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Hata ayıklama" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Kanalda hata ayıkla" @@ -11164,7 +11159,7 @@ msgstr "Mesajda hata ayıkla" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Kullanıcıda hata ayıkla" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "{fileName} dosyasını sil" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Hesabı sil" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Uygulamayı sil" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Eki sil" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Medyayı sil" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Mesajı sil" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Diğer üyelerin mesajlarını silin. Sabitleme ayrı olarak yönetilir." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Geçiş anahtarını sil" @@ -11701,7 +11696,7 @@ msgstr "Topluluğunuzun neyle ilgili olduğunu açıklayın" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Açıklama" @@ -11966,7 +11961,7 @@ msgstr "Cihaz:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Doğrudan giriş" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Doğrudan mesaj" @@ -12050,7 +12045,7 @@ msgstr "Doğrudan mesaj önizlemeleri" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Doğrudan mesajlar" @@ -12077,14 +12072,14 @@ msgstr "Doğrudan yükleme etkin" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Devre dışı bırak" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Hesabı devre dışı bırak" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Bağlantı kesildi" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Keşfedilebilir topluluk" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Etiket" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Kapat" @@ -12477,7 +12472,7 @@ msgstr "DM ve arkadaşlık isteği ayarları" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "DM kapatıldı" @@ -12607,7 +12602,7 @@ msgstr "Engellemez. Daha sonra tekrar açabilirsiniz." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Alan adı" @@ -12697,7 +12692,7 @@ msgstr "Birinin yayınını izlemek için çift tıklayın." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Hollandaca" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "örn. YubiKey, iPhone, iş bilgisayarı" @@ -13092,7 +13087,7 @@ msgstr "Ad, açıklama ve simge gibi genel ayarları düzenleyin." #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Grubu düzenle" @@ -13123,7 +13118,7 @@ msgstr "Medyayı düzenle" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Mesajı düzenle" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "{windowEndsOn} tarihine kadar para iadesi için uygun. Bu işlem aboneliğinizi de hemen iptal eder." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "E-posta" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Emoji güncellendi" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Emojiler" @@ -13525,7 +13520,7 @@ msgstr "Favoriler boş" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Etkinleştir" @@ -13680,7 +13675,7 @@ msgstr "Mobil anlık bildirimleri etkinleştir" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Bildirimleri etkinleştir" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Yapılandırdığınız kimlik bilgilerine sahip entegrasyonları etkinleştirin. Yalnızca kullanılabilir hizmetler gösterilir." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "İki faktörlü kimlik doğrulamayı etkinleştir" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "İngilizce (ABD)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Gelişmiş" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Yeni e-posta adresini girin" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Geçiş anahtarınızı kullanamıyorsanız yedek kodlarınızdan birini girin." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Yedek kodlarınızdan birini girin." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Metin girin" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Kimlik doğrulayıcı uygulamanızdaki {digitCount} haneli kodu veya bir yedek kodu girin." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Devam etmeden önce kodu girin." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Kimlik doğrulayıcı uygulamanızdaki kodu girin." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Adınızı girin" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Parolanızı girin." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "<0>{expiredDate} tarihinde sona erdi. <1/> artık etkin değil. İstediğiniz zaman yeniden abone olabilirsiniz." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Sona eriyor" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "İfade otomatik tamamlama" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "İfade seçici kategorileri" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Emojiler hazırlanamadı" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Kırpılan görsel işlenemedi. Tekrar deneyin." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "SSO başlatılamadı" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Hesap değiştirilemedi" @@ -15053,7 +15048,7 @@ msgstr "Favoriler" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Favoriler" @@ -15268,6 +15263,11 @@ msgstr "Hesap kurulumunu tamamla" msgid "Finish account setup first" msgstr "Önce hesap kurulumunu tamamla" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Yeni sekmede tamamlayın. Kapattıysanız Geçiş anahtarıyla devam et'e tekrar basın." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Klasör adı" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Klasör ayarları" @@ -15479,7 +15479,7 @@ msgstr "Kendim için" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Bu doğrulama için bizden bir mesaj almak yerine bize bir mesaj göndereceksiniz." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Güvenliğiniz için devam etmeden önce lütfen siz olduğunuzu onaylayın." @@ -15606,7 +15606,7 @@ msgstr "Parolamı unuttum" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Parolanızı mı unuttunuz?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Sadece arkadaşlar ve küçük topluluklar" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Arkadaşların arkadaşları" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Genel" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Almanya" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "{premiumProductName} edin" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF URL'leri" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF'ler" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Genel kısayol" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Geri dön" @@ -16374,6 +16374,11 @@ msgstr "Geri dön" msgid "Go back and enter a valid email." msgstr "Geri dönün ve geçerli bir e-posta adresi girin." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "{productName}'e geri dönerek devam edin." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Süre sonu dipnotlarını gizle" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Favorileri gizle" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Sessize alınmışları gizle" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Sessize alınmış kanalları gizle" @@ -17358,7 +17363,7 @@ msgstr "Kimlik" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Boşta" @@ -17818,7 +17823,7 @@ msgstr "Uygunsuz profil" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Gelen kutusu" @@ -17867,7 +17872,7 @@ msgstr "Topluluk kimliğini girin." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Davet sayfası önizlemesi" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Kişileri davet et" @@ -18456,7 +18461,7 @@ msgstr "Davet eden:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Davetler" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Aramaya katıl" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Topluluğa katıl" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "{productName}'e katılma tarihi" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Git" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Bu topluluktan bir üyeyi at." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Üyeyi at" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Aramadan ayrıl" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Topluluktan ayrıl" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Bağlantı oluşturucu" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Bağlantı panoya kopyalandı" @@ -19859,8 +19864,8 @@ msgstr "Kötü amaçlı yazılım veya tehlikeli bağlantılar" msgid "Malware, credential theft, or harmful files." msgstr "Kötü amaçlı yazılım, kimlik bilgisi hırsızlığı veya zararlı dosyalar." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Yönet" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Hesapları yönet" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Hesabınıza erişimi olan uygulamaları ve cihazları yönetin" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Tüm okunmamış gelen kutusu kanallarını onay sormadan hemen okundu olarak işaretle" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Okundu olarak işaretle" @@ -20021,7 +20026,7 @@ msgstr "Spoiler olarak işaretle" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Okunmadı olarak işaretle" @@ -20169,7 +20174,7 @@ msgstr "Yetişkinlere özel topluluk" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Yetişkinlere uygun içerik" @@ -20315,7 +20320,7 @@ msgstr "Ölçülüyor…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "üyeler" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Üyeler" @@ -20616,7 +20621,7 @@ msgstr "Bu rolden bahsedilsin mi?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Bahsetmeler" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Diğer medya işlemleri" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Diğer seçenekler" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Aramaları sessize al" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Kategoriyi sessize al" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Toplulukları sessize al" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Topluluğu sessize al" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Giriş sesini kapat" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Favorileri sessize al" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Ad en az 2 karakter olmalı" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Geçiş anahtarını adlandır" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Geçiş anahtarı adlandırma formu" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Hesabınız yok mu?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Asla" @@ -22276,7 +22281,7 @@ msgstr "Önce en yeni" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "İleri" @@ -22905,7 +22910,7 @@ msgstr "Kullanıcı bulunamadı" msgid "No verification is required." msgstr "Doğrulama gerekmiyor." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Kullanılabilir doğrulama yöntemi yok" @@ -23038,11 +23043,13 @@ msgstr "Bulunamadı" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Şimdi değil" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Not (yalnızca size görünür)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Hiçbiri" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Bildirim geçersiz kılmaları" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Bildirim ayarları" @@ -23152,7 +23159,7 @@ msgstr "Bildirim sesi düzeyi" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Kapalı" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Çevrimdışı" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "Tamam" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Tamam" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "çevrimiçi" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Çevrimiçi" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Yalnızca \"{manageCommunityPermissionLabel}\" iznine sahip üyeler bunu değiştirebilir." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Yalnızca bahsetmeler" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Ayarlarda {labelText} bölümünü aç" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "{landmarkName} öğesini aç" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Açık doğrudan mesajlar" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "DM aç" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "{invoiceLabel} faturasını aç" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Bağlantıyı aç" @@ -23850,7 +23857,7 @@ msgstr "Hızlı değiştiriciyi aç" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Ayarları aç" @@ -23935,11 +23942,6 @@ msgstr "Tema stüdyosu açılır penceresini aç" msgid "Open theme studio…" msgstr "Tema stüdyosunu aç…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Geçiş anahtarınızı kullanmak için bu pencereyi {productName} içinden açın." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Seçenekler" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Geçiş anahtarı" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Geçiş anahtarı adı" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Geçiş anahtarı güncellendi" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Geçiş anahtarları" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Geçiş anahtarları, geçerli bir uygulama tanımlayıcısına sahip imzalı bir macOS paketine ihtiyaç duyar. İmzalı masaüstü uygulamasını yükleyin ve tekrar deneyin." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Parola" msgid "Password changed" msgstr "Parola değiştirildi" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Parola yöneticileri bu web adresinde geçiş anahtarınızı sunmayabilir. Bunun yerine eski adreste bir açılır pencerede deneyin." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Mesaj bağlantısını yapıştırın." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Kişisel sözlük" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Kişisel notlar" @@ -24885,7 +24887,7 @@ msgstr "Grup DM'ini sabitle" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Mesajı sabitle" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "sabitlenmiş" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "DM sabitlendi" @@ -25020,7 +25022,7 @@ msgstr "Platform yöneticisi" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Oynat" @@ -25318,6 +25320,11 @@ msgstr "Atamak için bir tuşa, fare düğmesine veya oyun kumandası düğmesin msgid "Press a shortcut…" msgstr "Kısayol tuşlarına basın…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Geçiş anahtarınızı kullanmak için Devam et'e basın." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Birincil dil" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Ana gezinme" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Gizlilik politikası" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Gizlilik ayarları" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "İpucu:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Devam et" @@ -26090,7 +26097,7 @@ msgstr "{emojiShortcode} ile tepki ver" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Yeniden oluşturmak mevcut belirteci geçersiz kılar. Eski değeri kullanan tüm kodları güncelleyin." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Kaydol" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Kayıtlı geçiş anahtarları" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Banner'ı kaldır" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Yer işaretini kaldır" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Sözlükten kaldır" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Favorilerden kaldır" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Favori GIF'lerden kaldırıldı" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Favorilerden kaldırıldı" @@ -27032,7 +27039,7 @@ msgstr "İzinleri kaldırmak botun özelliklerini kısıtlayabilir." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Zaman aşımını kaldırmak, <0>{targetUserTag} adlı kullanıcının tekrar mesaj göndermesine, tepki vermesine ve sesli kanallara katılmasına izin verir." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Yeniden adlandır" @@ -27119,7 +27126,7 @@ msgstr "Yanıtlar" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Yanıtla" @@ -27209,7 +27216,7 @@ msgstr "Sorun bildir" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Mesajı bildir" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Moderasyon işlemleri için 2FA zorunlu kıl" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "İkinci faktör olarak geçiş anahtarı gerektir" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Sıfırlama bağlantısı geçersiz veya süresi dolmuş" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Yetişkin içeriği anlaşması durumunu sıfırla" @@ -27880,7 +27887,7 @@ msgstr "ters görsel" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Ters görsel arama" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "İncele ve onayla" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Hesabınıza erişebilecek uygulamaları gözden geçirin." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Geçmiş satın alımları ve iade seçeneklerini incele" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Oturum açmış cihazları gözden geçirin ve tanımadığınız oturumları kapatın." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Rol güncellendi" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Roller" @@ -28261,7 +28268,7 @@ msgstr "Doygunluk" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Kapsam" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Kapsamlar" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Ekran okuyucu" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Kanallarda, kişilerde veya topluluklarda ara" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Arkadaş ara" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Seçili metni ara" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Ayarları ara" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Ayarları ara…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Güvenlik" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Güvenlik özellikleri" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Güvenlik anahtarı" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Güvenlik anahtarı/geçiş anahtarı" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Hassas medya" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Gönderildi" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Oturum" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "{identifier} için oturumunuzun süresi doldu. Tekrar oturum açın." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Tüm ses efektlerinin düzeyini ayarlar. Sese özel geçersiz kılmalar bunu yok sayar." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Ayarlar açıldı." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Ayarlar bölümleri" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Kenar çubuğu" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Giriş yap" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Hediyenizi almak için giriş yapın" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Tarayıcıyla giriş yap" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Geçiş anahtarıyla giriş yap" @@ -30666,7 +30673,7 @@ msgstr "Kuruluşunuzun tek oturum açma sağlayıcısıyla oturum açın." #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Çıkış yap" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Oturum açma ayrıntıları" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Oturum açma akışı" @@ -31189,7 +31196,7 @@ msgstr "Bazı kullanıcılar eklenemiyor" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Bir şeyler ters gitti" @@ -31374,7 +31381,7 @@ msgstr "Ses düzeyi" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Sesler" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Ekler, mesaj girişine eklenir eklenmez yüklenmeye başlar" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Görüntülü arama başlat" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Sesli arama başlat" @@ -31899,7 +31906,7 @@ msgstr "çıkartma" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Çıkartma: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Çıkartmalar" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Tüm bağlantılara artık güvenilmesin mi?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Geçiş anahtarları iki faktörlü kimlik doğrulama için artık kullanılmasın mı?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Tüm rol bahsetmelerini engelle" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Gömülü içerikleri gizle" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "Metin kanalı" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Metin kanalı" @@ -33055,7 +33062,7 @@ msgstr "Telefonunuzdan bize mesaj gönderin" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Metin okuma" @@ -33119,6 +33126,11 @@ msgstr "Bu işlem tamamlanamadı. Bazı topluluklardan zaten çıkılmış olabi msgid "That did not go through. Nothing changed. Try again." msgstr "Bu işlem gerçekleşmedi. Hiçbir şey değişmedi. Tekrar deneyin." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "İşlem başarısız oldu. Tekrar deneyin veya iptal edin." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Geçerli bir renk gibi görünmüyor. Hex, rgb(), hsl() veya bir CSS renk adı deneyin." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Bu görsel kullanılamadı. Farklı bir dosya deneyin." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Bu görsel geçersiz. Başka bir tane deneyin." @@ -34035,11 +34047,11 @@ msgstr "Bu, ikinci seçenek açıklamasıdır" msgid "This is the third option description" msgstr "Bu, üçüncü seçenek açıklamasıdır" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Bu son geçiş anahtarınız ve geçiş anahtarları ikinci faktörünüz. Bunu silerseniz hesabınızdaki iki faktörlü kimlik doğrulama kapanır ve mevcut yedek kodlarınız geçersiz olur." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Bu son geçiş anahtarınız. Bunu sildikten sonra ikinci faktör olarak geçiş anahtarı kullanamazsınız." @@ -34154,16 +34166,6 @@ msgstr "Bu katılımcı sağırlaştırıldı" msgid "This participant was deafened by moderators" msgstr "Bu katılımcı moderatörler tarafından sağırlaştırıldı" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Bu geçiş anahtarı isteği doğrulanamadı. Bu pencereyi kapatıp tekrar deneyin." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Bu geçiş anahtarı isteği zaman aşımına uğradı. Bu pencereyi kapatıp tekrar deneyin." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Bu işlem tüm güvenilen alan adlarını kaldırır. Tüm alan adları msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Bu işlem tüm özel kısayolları kaldırır ve yerleşik kısayolların tümünü yeniden etkinleştirir. Bu işlem geri alınamaz." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Bu isteğin süresi doldu. Geri dönüp tekrar deneyin." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Bu sıfırlama bağlantısının süresi dolmuş. Sıfırlama bağlantıları 1 saat geçerlidir. Lütfen yeni bir tane isteyin." @@ -34807,7 +34814,7 @@ msgstr "Grup sahipliği {userName} adlı kişiye devredilsin mi?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Sahipliği devret" @@ -34823,7 +34830,7 @@ msgstr "Sahiplik {0} adlı kişiye devredildi" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Çevir" @@ -34980,7 +34987,7 @@ msgstr "Farklı bir değişken adı deneyin veya aramayı temizleyin." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Tekrar dene" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Tekrar dene" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Birazdan tekrar deneyin." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "\"Tema\", \"bildirimler\" veya \"gizlilik\" gibi bir şey aramayı deneyin" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Bunun yerine güvenlik anahtarını/geçiş anahtarını dene" @@ -35088,7 +35095,7 @@ msgstr "Türkçe" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Kapat" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Bu kaynak için ses paylaşımını kapatın veya birazdan tekrar deneyin." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Kamerayı kapat" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Giriş veya hesap güvenliği ayrıntılarını görüntülemeden önce yayın gizliliğini kapatın." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Aç" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "İki faktörlü" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "İki faktörlü kimlik doğrulama" @@ -35288,7 +35295,7 @@ msgstr "İki faktörlü kimlik doğrulama devre dışı bırakıldı" msgid "Two-factor authentication enabled" msgstr "İki faktörlü kimlik doğrulama etkinleştirildi" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "İki faktörlü kimlik doğrulama açık" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Kullanıcının engelini kaldır" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Kategorisiz" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Web sitesi bağlantılarının altını çizin" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Anladım" @@ -35643,7 +35650,7 @@ msgstr "Evrensel yedek. En düşük kalite, ancak her yerde çalışır." #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Tüm cihazların sesini aç" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Kategoriyi sessizden çıkar" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Toplulukları sessizden çıkar" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Topluluğu sessizden çıkar" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "DM'leri sessizden çıkar" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Favorileri sessizden çıkar" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Sabitlemeyi kaldır" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Mesajın sabitlemesini kaldır" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Bu mesajın sabitlemesi kaldırılsın mı?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "DM'in sabitlemesi kaldırıldı" @@ -36193,6 +36200,11 @@ msgstr "E-postayı güncelle" msgid "Update my status" msgstr "Durumumu güncelle" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Geçiş anahtarını güncelle" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Zaman aşımını güncelle" msgid "Update your own nickname." msgstr "Kendi takma adınızı güncelleyin." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Geçiş anahtarınızı güncelleyin" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "{readMessageHistoryPermissionLabel} iznine sahip olmayan üyeler için m msgid "Use a different email address and verify it with a code." msgstr "Farklı bir e-posta adresi kullanın ve bir kodla doğrulayın." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Parola yöneticisindeki bir geçiş anahtarını kullan" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Gerçek değeri kullan" msgid "Use alternative method" msgstr "Alternatif yöntem kullan" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "İki faktörlü kimlik doğrulama kodları oluşturmak için bir kimlik doğrulayıcı uygulama kullanın" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Yalnızca {productName} kurallarını açıkça ihlal ediyorsa ve yukarıdakilere uymuyorsa kullanın." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Geçiş anahtarları iki faktörlü kimlik doğrulama için kullanılsın mı?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Parola olmadan oturum açmak için geçiş anahtarlarını kullanın" @@ -36824,8 +36836,8 @@ msgstr "Ses etkinliğini kullan" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Varsa işletim sisteminizin yazım denetleyicisini kullanın. Yoksa {productName} uygulama içi sözlüklerini kullanın." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Geçiş anahtarınızı kullanın" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Kullanıcı kontrolleri" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Kullanıcı hata ayıklaması" @@ -36972,7 +36984,7 @@ msgstr "Kullanıcı sesi" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Doğrulama iptal edildi" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Doğrulama kodu" @@ -37185,7 +37197,7 @@ msgstr "Doğrulama e-postası gönderildi. Gelen kutunuzu kontrol edin." msgid "Verification expired" msgstr "Doğrulamanın süresi doldu" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Onaylı topluluk" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Doğrula" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Bağlantıyı doğrula" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "E-postayı doğrula" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Kimlik doğrulama formu" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Kimliğinizi doğrulayın" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Arkadaşlık isteği göndermek için e-posta adresinizi doğrulayın." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Geçiş anahtarı eklemeden önce e-postanızı doğrulayın." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Bir kimlik doğrulayıcı uygulaması eklemeden önce e-postanızı doğrulayın." @@ -37571,7 +37583,7 @@ msgstr "Yasaklı kullanıcıları görüntüle ve yönet." msgid "View and manage every webhook configured across your community." msgstr "Topluluğunuzda yapılandırılmış tüm webhook'ları görüntüleyin ve yönetin." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Hesap kurtarma yedek kodlarınızı görüntüleyin ve yönetin" @@ -37605,7 +37617,7 @@ msgstr "Kanalı görüntüle" msgid "View channel members" msgstr "Kanal üyelerini görüntüle" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Kodları görüntüle" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Planları görüntüle" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Profili görüntüle" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "sesli kanal" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Sesli kanal" @@ -38073,7 +38085,7 @@ msgstr "İptal edildi" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Burada bekleyin" msgid "Waiting for connection..." msgstr "Bağlantı bekleniyor..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Geçiş anahtarı bekleniyor…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "İzle" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Yayını izle" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Web sitesi önizlemeleri" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Tekrar hoş geldiniz" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Şu anda hiçbir toplulukta değilsiniz." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "{userName} adlı kullanıcıyı engellediniz. Engelini kaldırana kadar mesaj gönderemezsiniz." @@ -39101,6 +39113,11 @@ msgstr "Silme işlemini 14 gün içinde iptal edebilirsiniz" msgid "You can close this modal. The import will continue in the background." msgstr "Bu pencereyi kapatabilirsiniz. İçe aktarma işlemi arka planda devam edecektir." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Bu sekmeyi kapatabilirsiniz" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Bu sekmeyi kapatıp uygulamaya geri dönebilirsiniz." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Kendinize arkadaşlık isteği gönderemezsiniz." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Bu kanalda mesaj gönderemezsiniz." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "E-posta adımını yine de tamamlamanız gerekecek." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Artık parolanızdan sonra sizden geçiş anahtarı istenmeyecek. Kimlik doğrulayıcı uygulamanız ikinci faktörünüz olarak kalacak." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Çıkış yapılan tüm cihazlarda tekrar oturum açmanız gerekir" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Yeni bir cihazda oturum açmak için geçiş anahtarlarınızdan birine ihtiyacınız olacak. Tüm geçiş anahtarlarınızı kaybederseniz hesabınıza kalıcı olarak erişemeyebilirsiniz. Yedek kodlarınız sizin için kaydedilecek, böylece hesabınıza girmenin bir yolu kalacak." @@ -39918,12 +39935,12 @@ msgstr "Bu toplulukta mesaj göndermek için hesabınız çok yeni." msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Hesap isteğiniz onay bekliyor. Bir yönetici onayladıktan sonra oturum açabilirsiniz." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Hesabınız çok faktörlü kimlik doğrulama gerektiriyor ancak bu cihazda desteklenen bir yöntem ayarlanmamış. Kimlik doğrulayıcı uygulamanızın veya güvenlik anahtarınızın olduğu bir cihazdan oturum açın ya da destek ekibiyle iletişime geçin." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Parolanızla oturum açtığınızda hesabınız artık iki faktörlü kimlik doğrulamayla korunmayacak. Ayrıca iki faktörlü kimlik doğrulama gerektiren topluluklardaki yükseltilmiş izinlerinizi de kaybedeceksiniz." @@ -39941,16 +39958,6 @@ msgstr "İşleminiz güvenlik sistemlerimiz tarafından işaretlendiği için ta msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Başvurunuz incelenmeyi bekliyor. İlan ayrıntılarınızı yine de güncelleyebilir veya başvuruyu geri çekebilirsiniz." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Tarayıcınız geçiş anahtarı açılır penceresini engelledi. Bu site için açılır pencerelere izin verin ve tekrar deneyin." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Tarayıcınız bu alan adında geçiş anahtarlarını desteklemiyor. Tarayıcınızı güncelleyin veya parolanız ve iki faktör kodunuzla giriş yapın." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Topluluğunuzun Keşfet'te listelenebilmesi için en az {minMemberCount, msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Kredi kartınız kontrol edildi. Kart geçerliyse, yetişkinlere yönelik içerik kısa süre içinde açılacaktır. Bu sekmeyi kapatıp uygulamaya dönebilirsiniz." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Cihazınız {name} için güncellenmiş bir geçiş anahtarını kaydetmenizi isteyecek. Bu, eskisinin yerini alır." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Cihazınız {name} için güncellenmiş bir geçiş anahtarını kaydetmenizi isteyecek. Az önce kullandığınız telefonu veya güvenlik anahtarını kullanın." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Büyüt" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Yakınlaştır" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/uk/messages.po b/fluxer_app/src/features/i18n/locales/uk/messages.po index b90c9cf4d..b65c3ee14 100644 --- a/fluxer_app/src/features/i18n/locales/uk/messages.po +++ b/fluxer_app/src/features/i18n/locales/uk/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {учасник} few {учасники} many {учасників} other {учасників}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# згадка} few {# згадки} many {# згадок} other {# згадки}}" @@ -2370,8 +2370,8 @@ msgstr "6 місяців" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6-значний код" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Перевизначення облікового запису та преміум-функцій" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Доступ до облікового запису" @@ -2807,7 +2807,7 @@ msgstr "Активний місячний підписник (скасуванн #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Щоб продовжити, додайте обліковий запи msgid "Add an email and password to your account first." msgstr "Спершу додайте електронну пошту та пароль до свого облікового запису." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Додайте ще один рівень безпеки для свого облікового запису" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Додати бота до місця призначення" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Додати канал" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Додавати нові реакції до повідомлень." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Додати примітку" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Додати перевизначення" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Додати ключ доступу" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Додати реакцію" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Додати до словника" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Додати до вибраного" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Додано до вибраних GIF" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Додано до вибраного" @@ -3296,11 +3296,11 @@ msgstr "Додано до вибраного" msgid "Added to saved media" msgstr "Додано до збережених медіа" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Додано: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Додано: {createdDate} • востаннє використано: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Усі мови" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Усі повідомлення" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Уже видалено" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Вже маєте обліковий запис?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Масштаб застосунку" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Масштаб застосунку" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Схвалити" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Підтвердьте цей застосунок у застосунку {productName}, яким ви вже користуєтеся. Пароль не потрібен." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Ви впевнені, що хочете видалити категорію «{categoryName}»? Цю дію не можна буде скасувати." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Ви впевнені, що хочете видалити ключ доступу <0>{0}?" @@ -4493,7 +4493,7 @@ msgstr "Ви впевнені, що хочете видалити це вкла msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Ви впевнені, що хочете видалити цю спільноту? Цю дію не можна скасувати. Усі канали, повідомлення та налаштування буде видалено назавжди." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Ви впевнені, що хочете видалити цей ключ доступу?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Запитувати перед початком дзвінків" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Запитувати ключ доступу після введення пароля під час входу" @@ -4690,7 +4690,7 @@ msgstr "Вкладення" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Аудіо" @@ -4851,14 +4851,14 @@ msgstr "Автентифікація" msgid "Authenticator" msgstr "Автентифікатор" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Застосунок для автентифікації" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Код автентифікатора" @@ -4928,7 +4928,7 @@ msgstr "Авторизовані застосунки" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Зараз відсутній(-я)" msgid "Back" msgstr "Назад" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Назад до {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Назад до ролей" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Назад до налаштувань" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Повернутися до входу" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Резервний код" @@ -5351,7 +5356,7 @@ msgstr "Резервний код" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Досягнуто ліміту закладок" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Дзвінки" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Камера вимкнена" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Камера ввімкнена" @@ -6364,9 +6369,9 @@ msgstr "Сюди не можна завантажити файли" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Сюди не можна завантажити файли" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Змінити емоджі" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Змінити псевдонім друга" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Змінити мій псевдонім у групі" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Змінити псевдонім" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Дії з каналом" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Канал додано до вибраного" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Канал створено" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Налагодження каналу" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Канал видалено" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Запис каналу" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Канал видалено з вибраного" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Виберіть акцентний колір профілю" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Зареєструвати обліковий запис" @@ -7715,7 +7720,7 @@ msgstr "Щоб надсилати скарги, зареєструйте сві msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Зареєструйте свій обліковий запис, додавши електронну пошту та пароль. Перед завершенням ми надішлемо код для підтвердження вашої адреси." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Зареєструйте свій обліковий запис, щоб отримати доступ до функцій безпеки, таких як двофакторна автентифікація та ключі доступу." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Очистити швидкий CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Очистити пошук" @@ -8103,7 +8108,7 @@ msgstr "Клонування вимкнено" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Закрити" @@ -8160,11 +8165,9 @@ msgstr "Закривати в рядок меню" msgid "Close to tray" msgstr "Закривати в трей" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Закрити вікно" @@ -8456,7 +8459,7 @@ msgstr "Спілкування" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Налагодження спільноти" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "За замовчуванням спільноти" @@ -8577,7 +8580,7 @@ msgstr "Запис учасника спільноти" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Учасники спільноти" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Рівень сповіщень спільноти" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Налаштування сповіщень спільноти" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "Порівняння" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Пройти перевірку вмісту для дорослих" @@ -9093,7 +9096,7 @@ msgstr "Підключення: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Контекстні меню можна відкрити лівим к #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Продовжити" msgid "Continue to checkout" msgstr "Перейти до оплати" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Продовжте, щоб створити ключ доступу для {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Продовжити скаргу на спільноту" msgid "Continue to report user" msgstr "Продовжити скаргу на користувача" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Продовжити з ключем доступу" @@ -9238,11 +9238,6 @@ msgstr "Продовжити з ключем доступу" msgid "Continue with SSO" msgstr "Продовжити через SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Продовжуйте за допомогою свого ключа доступу, щоб увійти до {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Координує рейди, масові нападки або пер #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Скопійовано" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Копіювати ID категорії" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Копіювати ID каналу" @@ -9421,12 +9416,12 @@ msgstr "Копіювати посилання на канал" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Копіювати код" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Копіювати ID спільноти" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Копіювати посилання-запрошення" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Копіювати повідомлення" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Копіювати ID повідомлення" @@ -9570,7 +9565,7 @@ msgstr "Копіювати ID повідомлення" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Копіювати посилання на стікер" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Скопіюйте ключ налаштування в застосун #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Копіювати ID користувача" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Копіювати ім'я користувача" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Не вдалося видалити застосунок" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Не вдалося видалити ключ доступу" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Не вдалося надіслати запрошення" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Не вдалося надіслати запрошення. Спробуйте ще раз." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Не вдалося оновити обхід блокування згадок" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Не вдалося оновити налаштування ключів доступу для двофакторної автентифікації" @@ -10206,6 +10201,11 @@ msgstr "Не вдалося оновити альтернативний текс msgid "Couldn't update voice activity sharing right now" msgstr "Наразі не вдалося оновити спільний доступ до голосової активності" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Не вдалося оновити ваш ключ доступу. Спробуйте ще раз." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Не вдалося завантажити аватар" msgid "Couldn't upload banner" msgstr "Не вдалося завантажити банер" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Не вдалося використати ваш ключ доступу у спливаючому вікні. Спробуйте ще раз." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Не вдалося перевірити цей код. Спробуйт msgid "Couldn't verify the connection" msgstr "Не вдалося підтвердити підключення" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Не вдалося підтвердити за допомогою ключа доступу. Спробуйте ще раз." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Затишний" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Створити" @@ -10298,7 +10293,7 @@ msgstr "Створити нову групу з {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Створити застосунок" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Створити категорію" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Створити канал" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Створити спільноту" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Власний текст попередження" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Власне…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Налагодження" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Налагодження каналу" @@ -11164,7 +11159,7 @@ msgstr "Налагодження повідомлення" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Налагодження користувача" @@ -11315,7 +11310,7 @@ msgstr "Делавер" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Видалити {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Видалити обліковий запис" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Видалити застосунок" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Видалити вкладення" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Видалити медіа" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Видалити повідомлення" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Видаляти повідомлення інших учасників. Закріплення керується окремо." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Видалити ключ доступу" @@ -11701,7 +11696,7 @@ msgstr "Опишіть, про що ваша спільнота" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Опис" @@ -11966,7 +11961,7 @@ msgstr "Пристрій:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Прямий вхід" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Особисте повідомлення" @@ -12050,7 +12045,7 @@ msgstr "Попередній перегляд особистих повідом #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Особисті повідомлення" @@ -12077,14 +12072,14 @@ msgstr "Пряме завантаження активне" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Вимкнути" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Вимкнути обліковий запис" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Від'єднано" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Спільнота в Discovery" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Дискримінатор" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Закрити" @@ -12477,7 +12472,7 @@ msgstr "Налаштування особистих повідомлень і з #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Приватний чат закрито" @@ -12607,7 +12602,7 @@ msgstr "Не блокує. Можна відкрити знову пізніше #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Домен" @@ -12697,7 +12692,7 @@ msgstr "Двічі клацніть на когось, щоб перегляну #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Нідерландська" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "наприклад, YubiKey, iPhone, робочий комп'ютер" @@ -13092,7 +13087,7 @@ msgstr "Редагуйте глобальні налаштування, як-о #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Редагувати групу" @@ -13123,7 +13118,7 @@ msgstr "Редагувати медіа" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Редагувати повідомлення" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Маєте право на відшкодування до {windowEndsOn}. Це також негайно скасує вашу підписку." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Електронна пошта" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Емоджі оновлено" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Емоджі" @@ -13525,7 +13520,7 @@ msgstr "Порожній список вибраного" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Увімкнути" @@ -13680,7 +13675,7 @@ msgstr "Увімкнути push-сповіщення на мобільному" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Увімкнути сповіщення" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Увімкніть інтеграції, облікові дані для яких ви налаштували. Показано лише доступні сервіси." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Увімкнути двофакторну автентифікацію" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Англійська (США)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Покращено" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Введіть нову електронну адресу" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Введіть один із резервних кодів, якщо не можете скористатися своїм ключем доступу." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Введіть один зі своїх резервних кодів." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Введіть текст" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Введіть {digitCount}-значний код із застосунку автентифікації або резервний код." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Введіть код, перш ніж продовжити." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Введіть код із застосунку автентифікації." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Введіть своє ім'я" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Введіть свій пароль." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Термін дії закінчився <0>{expiredDate}. <1/> більше не активні. Ви можете поновити підписку в будь-який час." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Закінчується" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Автозавершення виразів" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Категорії вибору виразів" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Не вдалося підготувати емоджі" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Не вдалося обробити обрізане зображення. Спробуйте ще раз." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Не вдалося запустити SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Не вдалося перемкнути обліковий запис" @@ -15053,7 +15048,7 @@ msgstr "Вибрані" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Вибране" @@ -15268,6 +15263,11 @@ msgstr "Завершити налаштування облікового зап msgid "Finish account setup first" msgstr "Спершу завершіть налаштування облікового запису" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Завершіть у новій вкладці. Якщо ви її закрили, натисніть «Продовжити з ключем доступу» ще раз." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Назва папки" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Налаштування папки" @@ -15479,7 +15479,7 @@ msgstr "Для мене" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Для цієї перевірки ви надсилаєте нам текстове повідомлення, а не отримуєте його від нас." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Для вашої безпеки підтвердьте, що це ви, щоб продовжити." @@ -15606,7 +15606,7 @@ msgstr "Забули пароль" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Забули пароль?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Лише друзі та невеликі спільноти" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Друзі друзів" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Загальні" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Німеччина" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Отримати {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "Посилання на GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF-файли" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Глобальна комбінація клавіш" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Назад" @@ -16374,6 +16374,11 @@ msgstr "Назад" msgid "Go back and enter a valid email." msgstr "Поверніться та введіть дійсну електронну адресу." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Поверніться до {productName}, щоб продовжити." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Сховати примітки про термін дії" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Сховати вибране" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Приховати вимкнені" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Приховати канали з вимкненими сповіщеннями" @@ -17358,7 +17363,7 @@ msgstr "Ідентичність" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Неактивний" @@ -17818,7 +17823,7 @@ msgstr "Неприйнятний профіль" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Вхідні" @@ -17867,7 +17872,7 @@ msgstr "Вкажіть ідентифікатор спільноти." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Попередній перегляд сторінки запрошення" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Запросити людей" @@ -18456,7 +18461,7 @@ msgstr "Хто запросив:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Запрошення" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Приєднатися до дзвінка" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Приєднатися до спільноти" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "У {productName} з" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Перейти" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Вигнати учасника з цієї спільноти." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Вигнати учасника" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Вийти з дзвінка" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Вийти зі спільноти" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Конструктор посилань" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Посилання скопійовано в буфер обміну" @@ -19859,8 +19864,8 @@ msgstr "Шкідливе ПЗ або небезпечні посилання" msgid "Malware, credential theft, or harmful files." msgstr "Шкідливе програмне забезпечення, крадіжка облікових даних або небезпечні файли." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Керувати" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Керувати обліковими записами" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Керуйте застосунками та пристроями, які мають доступ до вашого облікового запису" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Позначати всі непрочитані канали у вхідних як прочитані одразу, без запиту підтвердження" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Позначити як прочитане" @@ -20021,7 +20026,7 @@ msgstr "Позначити як спойлер" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Позначити як непрочитане" @@ -20169,7 +20174,7 @@ msgstr "Спільнота для дорослих" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Контент для дорослих" @@ -20315,7 +20320,7 @@ msgstr "Вимірювання…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "учасники" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Учасники" @@ -20616,7 +20621,7 @@ msgstr "Згадати цю роль?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Згадки" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Більше дій з медіа" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Більше опцій" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Вимкнути звук дзвінків" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Вимкнути сповіщення категорії" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Вимкнути сповіщення спільнот" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Вимкнути сповіщення спільноти" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Вимкнути звук входу" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Вимкнути сповіщення для вибраного" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Назва має містити щонайменше 2 символи" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Назвати ключ доступу" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Форма назви ключа доступу" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Небраска" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Потрібен обліковий запис?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Невада" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Ніколи" @@ -22276,7 +22281,7 @@ msgstr "Спочатку найновіші" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Далі" @@ -22905,7 +22910,7 @@ msgstr "Користувачів не знайдено" msgid "No verification is required." msgstr "Перевірка не потрібна." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Немає доступних методів перевірки" @@ -23038,11 +23043,13 @@ msgstr "Не знайдено" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Не зараз" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Примітка (видно лише вам)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Нічого" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Перевизначення сповіщень" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Налаштування сповіщень" @@ -23152,7 +23159,7 @@ msgstr "Гучність сповіщень" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Вимкнено" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Не в мережі" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "Гаразд" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Гаразд" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "онлайн" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Онлайн" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Змінювати це можуть лише учасники з дозволом «{manageCommunityPermissionLabel}»." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Лише згадки" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Відкрити {labelText} у налаштуваннях" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Відкрити {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Відкриті приватні чати" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Відкрити приватний чат" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Відкрити рахунок {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Відкрити посилання" @@ -23850,7 +23857,7 @@ msgstr "Відкрити швидкий перемикач" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Відкрити налаштування" @@ -23935,11 +23942,6 @@ msgstr "Відкрити спливаюче вікно студії тем" msgid "Open theme studio…" msgstr "Відкрити студію тем…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Відкрийте це вікно з {productName}, щоб скористатися своїм ключем доступу." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Опції" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Ключ доступу" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Назва ключа доступу" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Ключ доступу оновлено" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Ключі доступу" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Для ключів доступу потрібен підписаний пакет macOS з дійсним ідентифікатором застосунку. Установіть підписаний клієнт для комп'ютера та повторіть спробу." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Пароль" msgid "Password changed" msgstr "Пароль змінено" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Менеджери паролів можуть не пропонувати ваш ключ доступу за цією веб-адресою. Натомість спробуйте у спливаючому вікні за старою адресою." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Вставте посилання на повідомлення." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Особистий словник" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Особисті нотатки" @@ -24885,7 +24887,7 @@ msgstr "Закріпити груповий чат" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Закріпити повідомлення" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "закріплено" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Закріплений приватний чат" @@ -25020,7 +25022,7 @@ msgstr "Адміністратор платформи" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Відтворити" @@ -25318,6 +25320,11 @@ msgstr "Натисніть клавішу, кнопку миші або гейм msgid "Press a shortcut…" msgstr "Натисніть комбінацію клавіш…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Натисніть «Продовжити», щоб скористатися своїм ключем доступу." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Основна мова" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Головна навігація" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Політика конфіденційності" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Налаштування приватності" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Порада:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Продовжити" @@ -26090,7 +26097,7 @@ msgstr "Відреагувати {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Повторна генерація зробить поточний токен недійсним. Оновіть весь код, що використовує старе значення." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Зареєструватися" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Зареєстровані ключі доступу" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Видалити банер" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Видалити із закладок" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Видалити зі словника" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Видалити з вибраного" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Видалено з вибраних GIF" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Видалено з вибраного" @@ -27032,7 +27039,7 @@ msgstr "Видалення дозволів може обмежити можли msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Зняття тайм-ауту дозволить <0>{targetUserTag} знову надсилати повідомлення, реагувати та приєднуватися до голосових каналів." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Перейменувати" @@ -27119,7 +27126,7 @@ msgstr "Відповіді" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Відповісти" @@ -27209,7 +27216,7 @@ msgstr "Повідомити про проблему" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Поскаржитися на повідомлення" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Вимагати 2FA для дій модерації" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Вимагати ключ доступу як другий фактор" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Недійсне або прострочене посилання для скидання" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Скинути стан згоди на показ контенту для дорослих" @@ -27880,7 +27887,7 @@ msgstr "Зворотний пошук зображень" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Зворотний пошук зображень" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Перегляньте та підтвердьте" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Перегляньте застосунки, які мають доступ до вашого облікового запису." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Переглянути минулі покупки та варіанти повернення коштів" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Перегляньте підключені пристрої та завершіть сеанси, які ви не впізнаєте." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Роль оновлено" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Ролі" @@ -28261,7 +28268,7 @@ msgstr "Насиченість" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Область пошуку" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Області дії" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Програма читання з екрана" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Шукати канали, людей або спільноти" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Пошук друзів" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Шукати виділений текст" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Пошук налаштувань" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Пошук налаштувань…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Безпека" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Функції безпеки" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Ключ безпеки" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Ключ безпеки / ключ доступу" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Чутливі медіа" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Надіслано" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Сеанс" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Термін дії сеансу для {identifier} закінчився. Увійдіть знову." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Встановлює рівень для кожного звукового ефекту. Перевизначення для окремих звуків не враховують це." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Налаштування відкрито." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Розділи налаштувань" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Бічна панель" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Увійти" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Увійдіть, щоб отримати подарунок" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Увійти через браузер" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Увійти за допомогою ключа доступу" @@ -30666,7 +30673,7 @@ msgstr "Увійдіть за допомогою єдиного входу ва #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Вийти" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Дані для входу" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Вхід" @@ -31189,7 +31196,7 @@ msgstr "Деяких користувачів не можна додати" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Щось пішло не так" @@ -31374,7 +31381,7 @@ msgstr "Гучність" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Звуки" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Завантажувати вкладення одразу після їх додавання до поля введення повідомлення" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Почати відеодзвінок" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Почати голосовий дзвінок" @@ -31899,7 +31906,7 @@ msgstr "стікер" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Стікер: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Стікери" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Припинити довіряти всім посиланням?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Припинити використовувати ключі доступу для двофакторної автентифікації?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Вимкнути всі згадки ролей" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Приховати вбудований вміст" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "текстовий канал" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Текстовий канал" @@ -33055,7 +33062,7 @@ msgstr "Надішліть нам повідомлення зі свого те #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Перетворення тексту на мовлення" @@ -33119,6 +33126,11 @@ msgstr "Це не завершилося. Деякі спільноти могл msgid "That did not go through. Nothing changed. Try again." msgstr "Не вдалося. Нічого не змінилося. Спробуйте ще раз." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Не вдалося. Спробуйте ще раз або скасуйте." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Це не схоже на дійсний колір. Спробуйте шістнадцятковий код, rgb(), hsl() або назву кольору CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Не вдалося використати це зображення. Спробуйте інший файл." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Це зображення недійсне. Спробуйте інше." @@ -34035,11 +34047,11 @@ msgstr "Це опис другого варіанту" msgid "This is the third option description" msgstr "Це опис третього варіанту" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Це ваш останній ключ доступу, а ключі доступу є вашим другим фактором. Якщо видалити його, двофакторну автентифікацію для вашого облікового запису буде вимкнено, а поточні резервні коди перестануть працювати." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Це ваш останній ключ доступу. Після його видалення ви не зможете використовувати ключ доступу як другий фактор." @@ -34154,16 +34166,6 @@ msgstr "У цього учасника вимкнено звук" msgid "This participant was deafened by moderators" msgstr "Модератори вимкнули звук цьому учаснику" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Цей запит ключа доступу не вдалося перевірити. Закрийте це вікно та спробуйте ще раз." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Час очікування цього запиту ключа доступу минув. Закрийте це вікно та спробуйте ще раз." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Це видаляє всі довірені домени. Ви знов msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Це видалить усі власні комбінації клавіш і знову ввімкне всі вбудовані. Цю дію не можна скасувати." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Термін дії цього запиту минув. Поверніться та спробуйте ще раз." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Термін дії цього посилання для скидання пароля закінчився. Посилання для скидання дійсні протягом 1 години. Запитайте нове." @@ -34807,7 +34814,7 @@ msgstr "Передати право власності на групу кори #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Передати право власності" @@ -34823,7 +34830,7 @@ msgstr "Право власності передано користувачу {0 #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Перекласти" @@ -34980,7 +34987,7 @@ msgstr "Спробуйте іншу назву змінної або очист #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Спробувати ще раз" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Спробувати ще раз" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Спробуйте ще раз за мить." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Спробуйте пошукати щось на кшталт «тема», «сповіщення» або «конфіденційність»" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Спробувати ключ безпеки / ключ доступу" @@ -35088,7 +35095,7 @@ msgstr "Турецька" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Вимкнути" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Вимкніть звук для цього джерела або спробуйте ще раз за мить." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Вимкнути камеру" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Вимкніть конфіденційність трансляції, перш ніж переглядати дані для входу або відомості про безпеку облікового запису." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Увімкнути" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Двофакторна" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Двофакторна автентифікація" @@ -35288,7 +35295,7 @@ msgstr "Двофакторну автентифікацію вимкнено" msgid "Two-factor authentication enabled" msgstr "Двофакторну автентифікацію ввімкнено" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Двофакторну автентифікацію ввімкнено" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Розблокувати користувача" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Без категорії" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Підкреслювати посилання на веб-сайти" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Зрозуміло" @@ -35643,7 +35650,7 @@ msgstr "Універсальний запасний варіант. Найниж #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Увімкнути мікрофон на всіх пристроях" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Увімкнути сповіщення категорії" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Увімкнути сповіщення спільнот" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Увімкнути сповіщення спільноти" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Увімкнути сповіщення в приватних чатах" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Увімкнути сповіщення для вибраного" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Відкріпити" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Відкріпити повідомлення" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Відкріпити це повідомлення?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Відкріплений приватний чат" @@ -36193,6 +36200,11 @@ msgstr "Оновити електронну пошту" msgid "Update my status" msgstr "Оновити мій статус" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Оновити ключ доступу" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Оновити тайм-аут" msgid "Update your own nickname." msgstr "Оновлювати свій псевдонім." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Оновіть свій ключ доступу" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Використовуйте спеціальне модальне ві msgid "Use a different email address and verify it with a code." msgstr "Використайте іншу електронну адресу та підтвердьте її кодом." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Використати ключ доступу менеджера паролів" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Використати фактичне значення" msgid "Use alternative method" msgstr "Використати інший спосіб" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Використовуйте застосунок автентифікації для генерації кодів двофакторної автентифікації" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Використовуйте, лише якщо це чітко порушує правила {productName} і не підпадає під жодну з перелічених вище категорій." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Використовувати ключі доступу для двофакторної автентифікації?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Використовуйте ключі доступу для входу без пароля" @@ -36824,8 +36836,8 @@ msgstr "Використовувати голосову активність" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Використовуйте перевірку правопису вашої операційної системи, якщо вона доступна. В іншому разі використовуйте вбудовані словники {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Використайте свій ключ доступу" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Елементи керування користувача" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Налагодження користувача" @@ -36972,7 +36984,7 @@ msgstr "Гучність користувача" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Перевірку скасовано" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Код підтвердження" @@ -37185,7 +37197,7 @@ msgstr "Лист із підтвердженням надіслано. Пере msgid "Verification expired" msgstr "Термін дії підтвердження закінчився" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Верифікована спільнота" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Підтвердити" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Підтвердити підключення" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Підтвердити електронну пошту" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Форма підтвердження особи" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Підтвердьте, що це ви" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Підтвердьте свою електронну адресу, щоб надсилати запити на додавання в друзі." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Підтвердьте свою електронну пошту, перш ніж додавати ключ доступу." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Підтвердьте свою електронну пошту, перш ніж додавати застосунок автентифікації." @@ -37571,7 +37583,7 @@ msgstr "Переглядайте заблокованих користувачі msgid "View and manage every webhook configured across your community." msgstr "Переглядайте всі вебхуки, налаштовані у вашій спільноті, та керуйте ними." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Переглядайте резервні коди для відновлення облікового запису та керуйте ними" @@ -37605,7 +37617,7 @@ msgstr "Переглядати канал" msgid "View channel members" msgstr "Переглядати учасників каналу" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Переглянути коди" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Переглянути тарифи" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Переглянути профіль" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "голосовий канал" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Голосовий канал" @@ -38073,7 +38085,7 @@ msgstr "Анульовано" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Зачекайте тут" msgid "Waiting for connection..." msgstr "Очікування з'єднання…" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Очікування ключа доступу…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Дивитися" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Дивитися трансляцію" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Попередній перегляд вебсайтів" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "З поверненням" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Зараз ви не є учасником жодної спільноти." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Ви заблокували {userName}. Ви не зможете надсилати повідомлення, доки не розблокуєте цього користувача." @@ -39101,6 +39113,11 @@ msgstr "Ви можете скасувати видалення протягом msgid "You can close this modal. The import will continue in the background." msgstr "Можете закрити це вікно. Імпорт продовжиться у фоновому режимі." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Ви можете закрити цю вкладку" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Тепер ви можете закрити цю вкладку та повернутися до застосунку." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Ви не можете надіслати собі запит на додавання в друзі." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Ви не можете надсилати повідомлення в цьому каналі." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Вам усе одно потрібно буде пройти крок з електронною адресою." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Після введення пароля у вас більше не запитуватимуть ключ доступу. Ваш застосунок для автентифікації залишиться другим фактором." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Вам доведеться знову ввійти на всіх пристроях, з яких ви вийшли" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Вам знадобиться один із ваших ключів доступу для входу на новому пристрої. Якщо ви втратите всі ключі доступу, ви можете втратити доступ до свого облікового запису. Резервні коди буде збережено, щоб у вас залишався спосіб увійти." @@ -39918,12 +39935,12 @@ msgstr "Ваш обліковий запис занадто новий, щоб msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Ваш запит на обліковий запис очікує схвалення. Ви зможете ввійти після схвалення адміністратором." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Ваш обліковий запис вимагає багатофакторної автентифікації, але на цьому пристрої не налаштовано жодного підтримуваного методу. Увійдіть на пристрої із застосунком автентифікації або ключем безпеки чи зверніться до служби підтримки." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Ваш обліковий запис більше не буде захищено двофакторною автентифікацією під час входу за допомогою пароля. Ви також втратите розширені дозволи у спільнотах, які вимагають двофакторної автентифікації." @@ -39941,16 +39958,6 @@ msgstr "Вашу дію не вдалося виконати, оскільки msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Ваша заявка очікує на розгляд. Ви все ще можете оновити деталі оголошення або відкликати заявку." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Ваш браузер заблокував спливаюче вікно ключа доступу. Дозвольте спливаючі вікна для цього сайту та спробуйте ще раз." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Ваш браузер не підтримує ключі доступу для цього домену. Оновіть браузер або увійдіть за допомогою пароля та двофакторного коду." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Щоб спільноту можна було додати до Discover msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Вашу кредитну картку перевірено. Якщо картка дійсна, доступ до контенту для дорослих незабаром буде розблоковано. Можете закрити цю вкладку та повернутися до застосунку." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Ваш пристрій запропонує зберегти оновлений ключ доступу для {name}. Він замінить старий." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Ваш пристрій запропонує зберегти оновлений ключ доступу для {name}. Скористайтеся тим самим телефоном або ключем безпеки, що й щойно." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Масштабувати" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Збільшити масштаб" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/vi/messages.po b/fluxer_app/src/features/i18n/locales/vi/messages.po index d372c6c27..fe6671e08 100644 --- a/fluxer_app/src/features/i18n/locales/vi/messages.po +++ b/fluxer_app/src/features/i18n/locales/vi/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {thành viên} other {thành viên}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, other {# lượt nhắc đến}}" @@ -2370,8 +2370,8 @@ msgstr "6 tháng" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "Mã gồm 6 chữ số" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "Ghi đè tài khoản & premium" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "Quyền truy cập tài khoản" @@ -2807,7 +2807,7 @@ msgstr "Người đăng ký gói tháng đang hoạt động (đã lên lịch h #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "Thêm tài khoản để tiếp tục." msgid "Add an email and password to your account first." msgstr "Trước tiên, hãy thêm email và mật khẩu vào tài khoản của bạn." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "Thêm một lớp bảo mật cho tài khoản của bạn" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "Thêm bot vào một điểm đến" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "Thêm kênh" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "Thêm cảm xúc mới vào tin nhắn." #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "Thêm ghi chú" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "Thêm quyền ghi đè" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "Thêm khóa truy cập" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "Thêm cảm xúc" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "Thêm vào từ điển" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "Thêm vào mục yêu thích" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "Đã thêm vào GIF yêu thích" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "Đã thêm vào mục yêu thích" @@ -3296,11 +3296,11 @@ msgstr "Đã thêm vào mục yêu thích" msgid "Added to saved media" msgstr "Đã thêm vào media đã lưu" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "Đã thêm: {createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "Đã thêm: {createdDate} • dùng lần cuối: {lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "Tất cả ngôn ngữ" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "Tất cả tin nhắn" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "Đã bị xóa" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "Đã có tài khoản?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "Thu phóng ứng dụng" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "Mức thu phóng ứng dụng" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "Duyệt" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "Phê duyệt ứng dụng này từ ứng dụng {productName} mà bạn đã sử dụng. Không cần mật khẩu." @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "Bạn có chắc chắn muốn xóa danh mục \"{categoryName}\" không? Thao tác này không thể hoàn tác." #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "Bạn có chắc chắn muốn xóa khóa truy cập <0>{0} không?" @@ -4493,7 +4493,7 @@ msgstr "Bạn có chắc chắn muốn xóa tệp đính kèm này không? Thao msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "Bạn có chắc chắn muốn xóa cộng đồng này không? Thao tác này không thể hoàn tác. Tất cả kênh, tin nhắn và cài đặt sẽ bị xóa vĩnh viễn." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "Bạn có chắc chắn muốn xóa khóa truy cập này không?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "Hỏi trước khi bắt đầu cuộc gọi" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "Khi đăng nhập, yêu cầu khóa truy cập sau khi bạn nhập mật khẩu" @@ -4690,7 +4690,7 @@ msgstr "Tệp đính kèm" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "Âm thanh" @@ -4851,14 +4851,14 @@ msgstr "Xác thực" msgid "Authenticator" msgstr "Trình xác thực" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "Ứng dụng xác thực" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "Mã xác thực" @@ -4928,7 +4928,7 @@ msgstr "Ứng dụng được cấp quyền" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "Đang vắng mặt" msgid "Back" msgstr "Quay lại" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "Quay lại {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "Quay lại vai trò" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "Quay lại cài đặt" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "Quay lại đăng nhập" @@ -5342,8 +5347,8 @@ msgstr "Backspace" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "Mã dự phòng" @@ -5351,7 +5356,7 @@ msgstr "Mã dự phòng" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "Đã đạt giới hạn tin nhắn đã lưu" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "Cuộc gọi" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "Tắt camera" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "Bật camera" @@ -6364,9 +6369,9 @@ msgstr "Không thể tải tệp lên ở đây" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "Không thể tải tệp lên ở đây" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "Đổi biểu tượng cảm xúc" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "Đổi biệt danh bạn bè" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "Đổi biệt danh của tôi trong nhóm" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "Đổi biệt danh" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "Thao tác kênh" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "Đã thêm kênh vào mục yêu thích" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "Đã tạo kênh" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "Gỡ lỗi kênh" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "Đã xóa kênh" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "Bản ghi kênh" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "Đã xóa kênh khỏi mục yêu thích" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "Chọn màu nhấn cho hồ sơ của bạn" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "Xác nhận tài khoản" @@ -7715,7 +7720,7 @@ msgstr "Xác nhận tài khoản và xác minh email của bạn để gửi bá msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "Xác nhận tài khoản của bạn bằng cách thêm email và mật khẩu. Chúng tôi sẽ gửi mã để xác minh email của bạn trước khi hoàn tất." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "Xác nhận tài khoản để truy cập các tính năng bảo mật như xác thực hai yếu tố và khóa truy cập." @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "Xóa CSS nhanh?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "Xóa tìm kiếm" @@ -8103,7 +8108,7 @@ msgstr "Đã tắt tính năng nhân bản" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "Đóng" @@ -8160,11 +8165,9 @@ msgstr "Đóng vào thanh menu" msgid "Close to tray" msgstr "Đóng vào khay hệ thống" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "Đóng cửa sổ" @@ -8456,7 +8459,7 @@ msgstr "Giao tiếp" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "Gỡ lỗi cộng đồng" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "Mặc định của cộng đồng" @@ -8577,7 +8580,7 @@ msgstr "Hồ sơ thành viên cộng đồng" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "Thành viên cộng đồng" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "Mức độ thông báo của cộng đồng" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "Cài đặt thông báo cộng đồng" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "So sánh" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "Hoàn tất kiểm tra nội dung người lớn" @@ -9093,7 +9096,7 @@ msgstr "Kết nối: {connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "Bạn có thể mở menu ngữ cảnh bằng cách nhấp chuột trái #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "Tiếp tục" msgid "Continue to checkout" msgstr "Tiếp tục thanh toán" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "Tiếp tục tạo khóa truy cập cho {host}" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "Tiếp tục báo cáo cộng đồng" msgid "Continue to report user" msgstr "Tiếp tục báo cáo người dùng" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "Tiếp tục bằng khóa truy cập" @@ -9238,11 +9238,6 @@ msgstr "Tiếp tục bằng khóa truy cập" msgid "Continue with SSO" msgstr "Tiếp tục với SSO" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "Tiếp tục với khóa truy cập của bạn để đăng nhập vào {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "Điều phối các cuộc tấn công, quấy rối hoặc gây rối c #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "Đã sao chép" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "Sao chép ID danh mục" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "Sao chép ID kênh" @@ -9421,12 +9416,12 @@ msgstr "Sao chép liên kết kênh" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "Sao chép mã" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "Sao chép ID cộng đồng" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "Sao chép URL mời" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "Sao chép tin nhắn" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "Sao chép ID tin nhắn" @@ -9570,7 +9565,7 @@ msgstr "Sao chép ID tin nhắn" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "Sao chép URL nhãn dán" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "Sao chép khóa thiết lập vào ứng dụng xác thực của bạn. #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "Sao chép ID người dùng" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "Sao chép tên người dùng" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "Không thể xóa ứng dụng" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "Không thể xóa khóa truy cập" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "Không gửi được lời mời" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "Không gửi được lời mời. Vui lòng thử lại." @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "Không thể cập nhật tùy chọn bỏ qua chặn nhắc đến" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "Không thể cập nhật xác thực hai yếu tố bằng khóa truy cập" @@ -10206,6 +10201,11 @@ msgstr "Không thể cập nhật văn bản thay thế. Vui lòng thử lại." msgid "Couldn't update voice activity sharing right now" msgstr "Không thể cập nhật chia sẻ hoạt động thoại ngay bây giờ" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "Không thể cập nhật khóa truy cập của bạn. Vui lòng thử lại." + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "Không thể tải ảnh đại diện lên" msgid "Couldn't upload banner" msgstr "Không thể tải ảnh bìa lên" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "Không thể sử dụng khóa truy cập của bạn trong cửa sổ bật lên. Thử lại." - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "Không thể xác minh mã. Vui lòng thử lại." msgid "Couldn't verify the connection" msgstr "Không thể xác minh kết nối" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "Không thể xác minh bằng khóa truy cập. Vui lòng thử lại." @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "Thoải mái" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "Tạo" @@ -10298,7 +10293,7 @@ msgstr "Tạo nhóm mới với {userName}" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "Tạo ứng dụng" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "Tạo danh mục" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "Tạo kênh" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "Tạo cộng đồng" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "Văn bản cảnh báo tùy chỉnh" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "Tùy chỉnh…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "Gỡ lỗi" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "Gỡ lỗi kênh" @@ -11164,7 +11159,7 @@ msgstr "Gỡ lỗi tin nhắn" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "Gỡ lỗi người dùng" @@ -11315,7 +11310,7 @@ msgstr "Delaware" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "Xóa {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "Xóa tài khoản" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "Xóa ứng dụng" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "Xóa tệp đính kèm" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "Xóa media" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "Xóa tin nhắn" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "Xóa tin nhắn của thành viên khác. Ghim tin nhắn được kiểm soát riêng." #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "Xóa khóa truy cập" @@ -11701,7 +11696,7 @@ msgstr "Mô tả về cộng đồng của bạn" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "Mô tả" @@ -11966,7 +11961,7 @@ msgstr "Thiết bị:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "Đầu vào trực tiếp" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "Tin nhắn trực tiếp" @@ -12050,7 +12045,7 @@ msgstr "Xem trước tin nhắn trực tiếp" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "Tin nhắn trực tiếp" @@ -12077,14 +12072,14 @@ msgstr "Tải lên trực tiếp đang bật" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "Tắt" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "Vô hiệu hóa tài khoản" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "Đã ngắt kết nối" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "Cộng đồng có trong Khám phá" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "Mã phân biệt" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "Bỏ qua" @@ -12477,7 +12472,7 @@ msgstr "Cài đặt DM & lời mời kết bạn" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "Đã đóng tin nhắn trực tiếp" @@ -12607,7 +12602,7 @@ msgstr "Không chặn. Bạn có thể mở lại sau." #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "Tên miền" @@ -12697,7 +12692,7 @@ msgstr "Nhấp đúp vào ai đó để xem luồng của họ." #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "Tiếng Hà Lan" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "Ví dụ: YubiKey, iPhone, máy tính làm việc" @@ -13092,7 +13087,7 @@ msgstr "Chỉnh sửa cài đặt chung như tên, mô tả và biểu tượng. #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "Chỉnh sửa nhóm" @@ -13123,7 +13118,7 @@ msgstr "Chỉnh sửa phương tiện" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "Chỉnh sửa tin nhắn" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "Đủ điều kiện hoàn tiền đến {windowEndsOn}. Thao tác này cũng sẽ hủy gói đăng ký của bạn ngay lập tức." #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "Email" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "Đã cập nhật biểu tượng cảm xúc" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "Biểu tượng cảm xúc" @@ -13525,7 +13520,7 @@ msgstr "Mục yêu thích trống" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "Bật" @@ -13680,7 +13675,7 @@ msgstr "Bật thông báo đẩy trên di động" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "Bật thông báo" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "Bật các tích hợp mà bạn đã cấu hình thông tin đăng nhập. Chỉ hiển thị các dịch vụ khả dụng." #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "Bật xác thực hai yếu tố" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "Tiếng Anh (Mỹ)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "Nâng cao" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "Nhập email mới" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "Nhập một trong các mã dự phòng của bạn nếu bạn không thể sử dụng khóa truy cập." #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "Nhập một trong các mã dự phòng của bạn." @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "Nhập văn bản" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "Nhập mã gồm {digitCount} chữ số từ ứng dụng xác thực hoặc mã dự phòng của bạn." @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "Nhập mã trước khi tiếp tục." #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "Nhập mã từ ứng dụng xác thực của bạn." @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "Nhập tên của bạn" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "Nhập mật khẩu của bạn." @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "Đã hết hạn vào <0>{expiredDate}. <1/> không còn hoạt động. Bạn có thể đăng ký lại bất cứ lúc nào." #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "Hết hạn" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "Tự động hoàn tất biểu cảm" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "Danh mục biểu cảm" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "Không thể chuẩn bị biểu tượng cảm xúc" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "Không xử lý được hình ảnh đã cắt. Vui lòng thử lại." @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "Không thể bắt đầu SSO" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "Không thể chuyển tài khoản" @@ -15053,7 +15048,7 @@ msgstr "Yêu thích" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "Mục yêu thích" @@ -15268,6 +15263,11 @@ msgstr "Hoàn tất thiết lập tài khoản" msgid "Finish account setup first" msgstr "Hoàn tất thiết lập tài khoản trước" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "Hoàn tất trong tab mới. Nếu bạn đã đóng tab đó, hãy nhấn Tiếp tục bằng khóa truy cập lần nữa." + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "Tên thư mục" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "Cài đặt thư mục" @@ -15479,7 +15479,7 @@ msgstr "Dành cho tôi" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "Để thực hiện bước kiểm tra này, bạn sẽ gửi tin nhắn cho chúng tôi thay vì nhận tin nhắn từ chúng tôi." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "Để bảo mật, vui lòng xác nhận danh tính của bạn để tiếp tục." @@ -15606,7 +15606,7 @@ msgstr "Quên mật khẩu" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "Quên mật khẩu?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "Chỉ bạn bè và cộng đồng nhỏ" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "Bạn của bạn bè" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "Chung" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "Đức" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "Nhận {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "URL GIF" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "Ảnh GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "Phím tắt toàn cục" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "Quay lại" @@ -16374,6 +16374,11 @@ msgstr "Quay lại" msgid "Go back and enter a valid email." msgstr "Quay lại và nhập một email hợp lệ." +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "Quay lại {productName} để tiếp tục." + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "Ẩn chú thích hết hạn" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "Ẩn mục yêu thích" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "Ẩn kênh đã tắt tiếng" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "Ẩn các kênh đã tắt tiếng" @@ -17358,7 +17363,7 @@ msgstr "Danh tính" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "Không hoạt động" @@ -17818,7 +17823,7 @@ msgstr "Hồ sơ không phù hợp" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "Hộp thư đến" @@ -17867,7 +17872,7 @@ msgstr "Nhập ID cộng đồng." #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "Xem trước trang lời mời" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "Mời mọi người" @@ -18456,7 +18461,7 @@ msgstr "Người mời:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "Lời mời" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "Tham gia cuộc gọi" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "Tham gia cộng đồng" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "Đã tham gia {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "Chuyển đến" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "Đuổi một thành viên khỏi cộng đồng này." #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "Đuổi thành viên" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "Rời cuộc gọi" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "Rời khỏi cộng đồng" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "Trình tạo liên kết" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "Đã sao chép liên kết" @@ -19859,8 +19864,8 @@ msgstr "Phần mềm độc hại hoặc liên kết nguy hiểm" msgid "Malware, credential theft, or harmful files." msgstr "Phần mềm độc hại, đánh cắp thông tin đăng nhập hoặc các tệp độc hại." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "Quản lý" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "Quản lý tài khoản" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "Quản lý ứng dụng và thiết bị có quyền truy cập vào tài khoản của bạn" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "Đánh dấu tất cả kênh chưa đọc trong hộp thư đến là đã đọc ngay lập tức, không cần xác nhận" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "Đánh dấu đã đọc" @@ -20021,7 +20026,7 @@ msgstr "Đánh dấu là spoiler" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "Đánh dấu là chưa đọc" @@ -20169,7 +20174,7 @@ msgstr "Cộng đồng nội dung người lớn" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "Nội dung người lớn" @@ -20315,7 +20320,7 @@ msgstr "Đang đo…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "thành viên" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "Thành viên" @@ -20616,7 +20621,7 @@ msgstr "Nhắc đến vai trò này?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "Lượt nhắc đến" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "Thêm thao tác với nội dung đa phương tiện" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "Tùy chọn khác" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "Tắt tiếng cuộc gọi" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "Tắt thông báo danh mục" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "Tắt thông báo tất cả cộng đồng" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "Tắt thông báo cộng đồng" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "Tắt âm thanh vào phòng" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "Tắt thông báo mục yêu thích" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "Tên phải có ít nhất 2 ký tự" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "Đặt tên khóa truy cập" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "Biểu mẫu đặt tên khóa truy cập" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "Nebraska" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "Chưa có tài khoản?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "Nevada" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "Không bao giờ" @@ -22276,7 +22281,7 @@ msgstr "Mới nhất trước" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "Tiếp" @@ -22905,7 +22910,7 @@ msgstr "Không tìm thấy người dùng nào" msgid "No verification is required." msgstr "Không yêu cầu xác minh." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "Không có phương thức xác minh nào" @@ -23038,11 +23043,13 @@ msgstr "Không tìm thấy trang" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "Để sau" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "Ghi chú (chỉ mình bạn thấy)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "Không có gì" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "Tùy chỉnh thông báo" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "Cài đặt thông báo" @@ -23152,7 +23159,7 @@ msgstr "Âm lượng thông báo" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "Tắt" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "Ngoại tuyến" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "OK" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "Đồng ý" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "trực tuyến" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "Trực tuyến" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "Chỉ thành viên có quyền \"{manageCommunityPermissionLabel}\" mới có thể thay đổi mục này." #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "Chỉ nhắc đến" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "Mở {labelText} trong cài đặt" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "Mở {landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "Tin nhắn trực tiếp đang mở" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "Mở tin nhắn trực tiếp" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "Mở hóa đơn {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "Mở liên kết" @@ -23850,7 +23857,7 @@ msgstr "Mở bộ chuyển đổi nhanh" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "Mở cài đặt" @@ -23935,11 +23942,6 @@ msgstr "Mở cửa sổ bật lên studio chủ đề" msgid "Open theme studio…" msgstr "Mở studio chủ đề…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "Mở cửa sổ này từ {productName} để sử dụng khóa truy cập của bạn." - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "Tùy chọn" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "Khóa truy cập" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "Tên khóa truy cập" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "Đã cập nhật khóa truy cập" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "Khóa truy cập" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "Khóa truy cập yêu cầu gói macOS đã ký có mã định danh ứng dụng hợp lệ. Hãy cài đặt ứng dụng máy tính đã ký và thử lại." #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "Mật khẩu" msgid "Password changed" msgstr "Đã đổi mật khẩu" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "Trình quản lý mật khẩu có thể không cung cấp khóa truy cập của bạn trên địa chỉ web này. Hãy thử lại trong cửa sổ bật lên trên địa chỉ cũ." - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "Dán liên kết tin nhắn." #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "Từ điển cá nhân" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "Ghi chú cá nhân" @@ -24885,7 +24887,7 @@ msgstr "Ghim tin nhắn nhóm" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "Ghim tin nhắn" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "đã ghim" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "Đã ghim tin nhắn trực tiếp" @@ -25020,7 +25022,7 @@ msgstr "Quản trị viên nền tảng" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "Phát" @@ -25318,6 +25320,11 @@ msgstr "Nhấn phím, nút chuột hoặc nút tay cầm chơi game để gán. msgid "Press a shortcut…" msgstr "Nhấn một phím tắt…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "Nhấn Tiếp tục để sử dụng khóa truy cập của bạn." + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "Ngôn ngữ chính" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "Điều hướng chính" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "Chính sách quyền riêng tư" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "Cài đặt quyền riêng tư" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "Mẹo hay:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "Tiếp tục" @@ -26090,7 +26097,7 @@ msgstr "Thả cảm xúc bằng {emojiShortcode}" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "Việc tạo lại sẽ làm mất hiệu lực token hiện tại. Hãy cập nhật mọi đoạn mã đang dùng giá trị cũ." #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "Đăng ký" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "Khóa truy cập đã đăng ký" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "Xóa ảnh bìa" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "Bỏ lưu tin nhắn" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "Xóa khỏi từ điển" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "Xóa khỏi mục yêu thích" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "Đã xóa khỏi GIF yêu thích" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "Đã xóa khỏi mục yêu thích" @@ -27032,7 +27039,7 @@ msgstr "Việc xóa quyền có thể giới hạn các tính năng của bot." msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "Gỡ tạm dừng sẽ cho phép <0>{targetUserTag} gửi tin nhắn, bày tỏ cảm xúc và tham gia kênh thoại trở lại." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "Đổi tên" @@ -27119,7 +27126,7 @@ msgstr "Trả lời" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "Trả lời" @@ -27209,7 +27216,7 @@ msgstr "Báo cáo sự cố" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "Báo cáo tin nhắn" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "Yêu cầu 2FA cho hành động kiểm duyệt" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "Yêu cầu khóa truy cập làm yếu tố thứ hai" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "Liên kết đặt lại không hợp lệ hoặc đã hết hạn" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "Đặt lại trạng thái đồng ý nội dung người lớn" @@ -27880,7 +27887,7 @@ msgstr "Tìm kiếm bằng hình ảnh" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "Tìm kiếm hình ảnh ngược" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "Xem lại và xác nhận" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "Xem xét các ứng dụng có thể truy cập vào tài khoản của bạn." @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "Xem lại các giao dịch mua trước đây và tùy chọn hoàn tiền" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "Xem xét các thiết bị đã đăng nhập và đăng xuất các phiên mà bạn không nhận ra." @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "Đã cập nhật vai trò" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "Vai trò" @@ -28261,7 +28268,7 @@ msgstr "Độ bão hòa" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "Phạm vi" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "Phạm vi" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "Trình đọc màn hình" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "Tìm kênh, người hoặc cộng đồng" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "Tìm bạn bè" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "Tìm kiếm văn bản đã chọn" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "Tìm kiếm cài đặt" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "Tìm kiếm cài đặt…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "Bảo mật" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "Tính năng bảo mật" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "Khóa bảo mật" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "Khóa bảo mật / khóa truy cập" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "Media nhạy cảm" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "Đã gửi" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "Phiên" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "Phiên đăng nhập của {identifier} đã hết hạn. Hãy đăng nhập lại." @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "Đặt mức âm lượng cho mọi hiệu ứng âm thanh. Các tùy chỉnh riêng cho từng âm thanh sẽ bỏ qua cài đặt này." #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "Đã mở cài đặt." #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "Các mục cài đặt" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "Thanh bên" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "Đăng nhập" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "Đăng nhập để nhận quà" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "Đăng nhập qua trình duyệt" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "Đăng nhập bằng khóa truy cập" @@ -30666,7 +30673,7 @@ msgstr "Đăng nhập bằng nhà cung cấp đăng nhập một lần của t #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "Đăng xuất" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "Chi tiết đăng nhập" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "Quy trình đăng nhập" @@ -31189,7 +31196,7 @@ msgstr "Không thể thêm một số người dùng" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "Đã xảy ra lỗi" @@ -31374,7 +31381,7 @@ msgstr "Âm lượng" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "Âm thanh" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "Bắt đầu tải lên các tệp đính kèm ngay khi chúng được thêm vào ô nhập liệu tin nhắn" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "Bắt đầu cuộc gọi video" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "Bắt đầu cuộc gọi thoại" @@ -31899,7 +31906,7 @@ msgstr "nhãn dán" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "Nhãn dán: {stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "Nhãn dán" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "Ngừng tin cậy tất cả liên kết?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "Ngừng sử dụng khóa truy cập để xác thực hai yếu tố?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "Tắt tất cả thông báo nhắc đến vai trò" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "Ẩn nội dung nhúng" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "kênh văn bản" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "Kênh văn bản" @@ -33055,7 +33062,7 @@ msgstr "Nhắn tin cho chúng tôi từ điện thoại của bạn" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "Chuyển văn bản thành giọng nói" @@ -33119,6 +33126,11 @@ msgstr "Thao tác này chưa hoàn tất. Có thể bạn đã rời khỏi mộ msgid "That did not go through. Nothing changed. Try again." msgstr "Đã xảy ra lỗi. Không có gì thay đổi. Thử lại." +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "Không thành công. Hãy thử lại hoặc hủy." + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "Màu này không hợp lệ. Hãy thử dùng mã hex, rgb(), hsl() hoặc tên màu CSS." @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "Không thể sử dụng ảnh đó. Hãy thử một tệp khác." #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "Hình ảnh không hợp lệ. Hãy thử ảnh khác." @@ -34035,11 +34047,11 @@ msgstr "Đây là mô tả của lựa chọn thứ hai" msgid "This is the third option description" msgstr "Đây là mô tả của lựa chọn thứ ba" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "Đây là khóa truy cập cuối cùng của bạn và khóa truy cập là yếu tố thứ hai của bạn. Xóa khóa này sẽ tắt xác thực hai yếu tố cho tài khoản của bạn, và các mã dự phòng hiện tại sẽ ngừng hoạt động." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "Đây là khóa truy cập cuối cùng của bạn. Khi khóa này bị xóa, bạn sẽ không thể sử dụng khóa truy cập làm yếu tố thứ hai nữa." @@ -34154,16 +34166,6 @@ msgstr "Người tham gia này đang tắt tiếng nghe" msgid "This participant was deafened by moderators" msgstr "Người tham gia này đã bị người điều hành tắt tiếng nghe" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "Không thể xác minh yêu cầu khóa truy cập này. Đóng cửa sổ này và thử lại." - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "Yêu cầu khóa truy cập này đã hết thời gian chờ. Đóng cửa sổ này và thử lại." - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "Thao tác này sẽ xóa tất cả các miền đáng tin cậy. Bạn msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "Thao tác này sẽ xóa mọi phím tắt tùy chỉnh và bật lại tất cả phím tắt tích hợp. Không thể hoàn tác thao tác này." +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "Yêu cầu này đã hết hạn. Quay lại và thử lại." + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "Liên kết đặt lại này đã hết hạn. Liên kết đặt lại có hiệu lực trong 1 giờ. Vui lòng yêu cầu một liên kết mới." @@ -34807,7 +34814,7 @@ msgstr "Chuyển quyền sở hữu nhóm cho {userName}?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "Chuyển quyền sở hữu" @@ -34823,7 +34830,7 @@ msgstr "Đã chuyển quyền sở hữu cho {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "Dịch" @@ -34980,7 +34987,7 @@ msgstr "Thử một tên biến khác hoặc xóa tìm kiếm." #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "Thử lại" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "Thử lại" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "Thử lại sau giây lát." @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "Thử tìm kiếm các mục như \"giao diện\", \"thông báo\" hoặc \"quyền riêng tư\"" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "Thử dùng khóa bảo mật / khóa truy cập" @@ -35088,7 +35095,7 @@ msgstr "Tiếng Thổ Nhĩ Kỳ" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "Tắt" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "Tắt chia sẻ âm thanh cho nguồn này hoặc thử lại sau." #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "Tắt camera" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "Tắt quyền riêng tư khi phát trực tuyến trước khi xem thông tin đăng nhập hoặc chi tiết bảo mật tài khoản." #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "Bật" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "Xác thực hai yếu tố" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "Xác thực hai yếu tố" @@ -35288,7 +35295,7 @@ msgstr "Đã tắt xác thực hai yếu tố" msgid "Two-factor authentication enabled" msgstr "Đã bật xác thực hai yếu tố" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "Đã bật xác thực hai yếu tố" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "Bỏ chặn người dùng" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "Chưa phân loại" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "Gạch chân liên kết trang web" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "Đã hiểu" @@ -35643,7 +35650,7 @@ msgstr "Dự phòng chung. Chất lượng thấp nhất nhưng dùng được #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "Bật micrô trên tất cả thiết bị" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "Bật thông báo danh mục" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "Bật thông báo tất cả cộng đồng" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "Bật thông báo cộng đồng" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "Bật thông báo tất cả tin nhắn trực tiếp" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "Bật thông báo mục yêu thích" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "Bỏ ghim" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "Bỏ ghim tin nhắn" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "Bỏ ghim tin nhắn này?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "Đã bỏ ghim tin nhắn trực tiếp" @@ -36193,6 +36200,11 @@ msgstr "Cập nhật email" msgid "Update my status" msgstr "Cập nhật trạng thái của tôi" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "Cập nhật khóa truy cập" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "Cập nhật thời gian tạm dừng" msgid "Update your own nickname." msgstr "Cập nhật biệt danh của bạn." +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "Cập nhật khóa truy cập của bạn" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "Dùng một cửa sổ riêng để đặt ngày giới hạn lịch s msgid "Use a different email address and verify it with a code." msgstr "Sử dụng một địa chỉ email khác và xác minh bằng mã." -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "Sử dụng khóa truy cập của trình quản lý mật khẩu" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "Dùng giá trị thực" msgid "Use alternative method" msgstr "Dùng phương thức khác" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "Dùng ứng dụng xác thực để tạo mã cho xác thực hai yếu tố" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "Chỉ sử dụng tùy chọn này nếu nội dung vi phạm rõ ràng các quy tắc của {productName} và không thuộc các danh mục trên." #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "Sử dụng khóa truy cập để xác thực hai yếu tố?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "Sử dụng khóa truy cập để đăng nhập không cần mật khẩu" @@ -36824,8 +36836,8 @@ msgstr "Sử dụng tính năng kích hoạt bằng giọng nói" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "Sử dụng trình kiểm tra chính tả của hệ điều hành khi có sẵn. Nếu không, hãy sử dụng từ điển tích hợp của {productName}." -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "Sử dụng khóa truy cập của bạn" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "Điều khiển người dùng" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "Gỡ lỗi người dùng" @@ -36972,7 +36984,7 @@ msgstr "Âm lượng người dùng" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "Đã hủy xác minh" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "Mã xác minh" @@ -37185,7 +37197,7 @@ msgstr "Đã gửi email xác minh. Kiểm tra hộp thư đến của bạn." msgid "Verification expired" msgstr "Xác minh đã hết hạn" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "Cộng đồng đã xác minh" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "Xác minh" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "Xác minh kết nối" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "Xác minh email" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "Biểu mẫu xác minh danh tính" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "Xác minh đó là bạn" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "Xác minh địa chỉ email của bạn để gửi lời mời kết bạn." #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "Xác minh email của bạn trước khi thêm khóa truy cập." #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "Xác minh email của bạn trước khi thêm ứng dụng xác thực." @@ -37571,7 +37583,7 @@ msgstr "Xem và quản lý người dùng bị cấm." msgid "View and manage every webhook configured across your community." msgstr "Xem và quản lý mọi webhook được cấu hình trong cộng đồng của bạn." -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "Xem và quản lý mã dự phòng để khôi phục tài khoản" @@ -37605,7 +37617,7 @@ msgstr "Xem kênh" msgid "View channel members" msgstr "Xem thành viên kênh" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "Xem mã" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "Xem các gói" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "Xem hồ sơ" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "kênh thoại" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "Kênh thoại" @@ -38073,7 +38085,7 @@ msgstr "Đã hủy" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "Đợi ở đây" msgid "Waiting for connection..." msgstr "Đang chờ kết nối..." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "Đang chờ khóa truy cập…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "Xem" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "Xem luồng" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "Xem trước trang web" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "Chào mừng bạn trở lại" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "Hiện bạn chưa tham gia cộng đồng nào." #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "Bạn đã chặn {userName}. Bạn sẽ không thể gửi tin nhắn trừ khi bạn bỏ chặn họ." @@ -39101,6 +39113,11 @@ msgstr "Bạn có thể hủy quá trình xóa trong vòng 14 ngày" msgid "You can close this modal. The import will continue in the background." msgstr "Bạn có thể đóng cửa sổ này. Quá trình nhập sẽ tiếp tục chạy nền." +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "Bạn có thể đóng tab này" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "Giờ bạn có thể đóng tab này và quay lại ứng dụng." @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "Bạn không thể tự gửi lời mời kết bạn cho chính mình." #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "Bạn không thể gửi tin nhắn trong kênh này." @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "Bạn vẫn cần hoàn thành bước email." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "Sau khi nhập mật khẩu, bạn sẽ không còn bị yêu cầu dùng khóa truy cập nữa. Ứng dụng xác thực của bạn vẫn là yếu tố thứ hai." @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "Bạn sẽ phải đăng nhập lại trên tất cả các thiết bị đã đăng xuất" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "Bạn sẽ cần một trong các khóa truy cập của mình để đăng nhập trên thiết bị mới. Nếu mất tất cả khóa truy cập, bạn có thể vĩnh viễn mất quyền truy cập vào tài khoản của mình. Các mã dự phòng sẽ được lưu cho bạn để bạn vẫn còn cách đăng nhập." @@ -39918,12 +39935,12 @@ msgstr "Tài khoản của bạn còn quá mới để gửi tin nhắn trong c msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "Yêu cầu tài khoản của bạn đang chờ phê duyệt. Bạn có thể đăng nhập sau khi quản trị viên phê duyệt." -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "Tài khoản của bạn yêu cầu xác thực đa yếu tố, nhưng chưa có phương thức nào được thiết lập trên thiết bị này. Vui lòng đăng nhập trên thiết bị có ứng dụng xác thực hoặc khóa bảo mật của bạn, hoặc liên hệ bộ phận hỗ trợ." #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "Tài khoản của bạn sẽ không còn được bảo vệ bằng xác thực hai yếu tố khi đăng nhập bằng mật khẩu. Bạn cũng sẽ mất các quyền nâng cao trong các cộng đồng yêu cầu xác thực hai yếu tố." @@ -39941,16 +39958,6 @@ msgstr "Hành động của bạn không thể hoàn tất vì đã bị hệ th msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "Đơn đăng ký của bạn đang chờ xét duyệt. Bạn vẫn có thể cập nhật chi tiết hoặc rút lại đơn đăng ký." -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "Trình duyệt của bạn đã chặn cửa sổ bật lên dùng cho khóa truy cập. Hãy cho phép cửa sổ bật lên cho trang web này và thử lại." - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "Trình duyệt của bạn không hỗ trợ khóa truy cập trên miền này. Hãy cập nhật trình duyệt hoặc đăng nhập bằng mật khẩu và mã xác thực hai yếu tố của bạn." - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "Cộng đồng của bạn cần có ít nhất {minMemberCount, plural, msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "Thẻ tín dụng của bạn đã được kiểm tra. Nếu thẻ hợp lệ, nội dung người lớn sẽ sớm được mở khóa. Bạn có thể đóng tab này và quay lại ứng dụng." +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "Thiết bị của bạn sẽ yêu cầu bạn lưu một khóa truy cập đã cập nhật cho {name}. Khóa này sẽ thay thế khóa cũ." + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "Thiết bị của bạn sẽ yêu cầu bạn lưu một khóa truy cập đã cập nhật cho {name}. Hãy sử dụng cùng điện thoại hoặc khóa bảo mật mà bạn vừa dùng." + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "Thu phóng cửa sổ" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "Phóng to" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/zh-CN/messages.po b/fluxer_app/src/features/i18n/locales/zh-CN/messages.po index a05c6c241..7a024e1fe 100644 --- a/fluxer_app/src/features/i18n/locales/zh-CN/messages.po +++ b/fluxer_app/src/features/i18n/locales/zh-CN/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, other {位成员}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, other {# 条提及}}" @@ -2370,8 +2370,8 @@ msgstr "6 个月" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6 位验证码" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "账号与会员覆盖" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "账号访问权限" @@ -2807,7 +2807,7 @@ msgstr "月度订阅活跃中(已安排取消)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "添加账号以继续。" msgid "Add an email and password to your account first." msgstr "请先为你的账号添加邮箱和密码。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "为你的账号添加额外的安全保护" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "将机器人添加到目标位置" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "添加频道" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "为消息添加新的反应。" #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "添加备注" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "添加覆盖" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "添加通行密钥" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "添加反应" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "添加到词典" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "添加到收藏夹" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "已添加到 GIF 收藏夹" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "已添加到收藏夹" @@ -3296,11 +3296,11 @@ msgstr "已添加到收藏夹" msgid "Added to saved media" msgstr "已添加到已保存媒体" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "添加日期:{createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "添加日期:{createdDate} • 最后使用:{lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "所有语言" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "所有消息" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "已删除" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "已有账号?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "应用缩放" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "应用缩放级别" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "批准" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "从你已在使用的 {productName} 应用批准此应用。无需密码。" @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "确定要删除类别“{categoryName}”吗?此操作无法撤销。" #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "确定要删除通行密钥 <0>{0} 吗?" @@ -4493,7 +4493,7 @@ msgstr "确定要删除此附件吗?此操作无法撤销,并将从该消息 msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "确定要删除此社区吗?此操作无法撤销。所有频道、消息和设置都将被永久删除。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "确定要删除此通行密钥吗?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "发起通话前先确认" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "登录时在输入密码后还需验证通行密钥" @@ -4690,7 +4690,7 @@ msgstr "附件" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "音频" @@ -4851,14 +4851,14 @@ msgstr "身份验证" msgid "Authenticator" msgstr "身份验证器" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "身份验证器应用" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "身份验证器验证码" @@ -4928,7 +4928,7 @@ msgstr "已授权应用" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "当前离开" msgid "Back" msgstr "返回" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "返回 {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "返回身份组" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "返回设置" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "返回登录" @@ -5342,8 +5347,8 @@ msgstr "退格" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "备用码" @@ -5351,7 +5356,7 @@ msgstr "备用码" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "已达书签上限" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "通话" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "关闭摄像头" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "开启摄像头" @@ -6364,9 +6369,9 @@ msgstr "无法在此上传文件" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "无法在此上传文件" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "更改表情" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "修改好友昵称" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "修改我的群昵称" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "修改昵称" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "频道操作" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "频道已添加到收藏夹" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "频道已创建" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "频道调试" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "频道已删除" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "频道记录" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "频道已从收藏夹中移除" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "选择你的资料页主题色" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "认领账号" @@ -7715,7 +7720,7 @@ msgstr "请先认领账号并验证邮箱,然后才能提交举报。" msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "添加邮箱和密码来认领你的账号。我们会在完成前发送验证码来确认你的邮箱。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "认领你的账号,即可使用双重认证、通行密钥等安全功能。" @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "清除快速 CSS?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "清除搜索" @@ -8103,7 +8108,7 @@ msgstr "已关闭克隆功能" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "关闭" @@ -8160,11 +8165,9 @@ msgstr "关闭时最小化到菜单栏" msgid "Close to tray" msgstr "关闭时最小化到托盘" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "关闭窗口" @@ -8456,7 +8459,7 @@ msgstr "通讯" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "社区调试" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "社区默认" @@ -8577,7 +8580,7 @@ msgstr "社区成员记录" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "社区成员" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "社区通知等级" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "社区通知设置" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "比较" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "完成成人内容验证" @@ -9093,7 +9096,7 @@ msgstr "连接:{connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "左键点击(按钮)或右键点击(其他元素)可打开上下 #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "继续" msgid "Continue to checkout" msgstr "继续结账" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "继续为 {host} 创建通行密钥" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "继续举报社区" msgid "Continue to report user" msgstr "继续举报此用户" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "使用通行密钥继续" @@ -9238,11 +9238,6 @@ msgstr "使用通行密钥继续" msgid "Continue with SSO" msgstr "使用 SSO 继续" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "使用你的通行密钥继续登录 {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "协调针对个人或社区的突袭、围攻或骚扰行为。" #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "已复制" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "复制类别 ID" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "复制频道 ID" @@ -9421,12 +9416,12 @@ msgstr "复制频道链接" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "复制代码" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "复制社区 ID" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "复制邀请链接" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "复制消息" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "复制消息 ID" @@ -9570,7 +9565,7 @@ msgstr "复制消息 ID" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "复制贴纸链接" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "将设置密钥复制到你的身份验证器应用中。" #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "复制用户 ID" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "复制用户名" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "无法删除应用" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "无法删除通行密钥" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "无法发送邀请" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "无法发送邀请。请重试。" @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "无法更新“绕过提及屏蔽”设置" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "无法更新通行密钥双重认证" @@ -10206,6 +10201,11 @@ msgstr "无法更新替代文本。请重试。" msgid "Couldn't update voice activity sharing right now" msgstr "暂时无法更新语音活动分享设置" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "无法更新你的通行密钥。请重试。" + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "无法上传头像" msgid "Couldn't upload banner" msgstr "无法上传横幅" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "无法在弹出窗口中使用你的通行密钥。请重试。" - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "无法验证该切换码。请重试。" msgid "Couldn't verify the connection" msgstr "无法验证连接" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "无法通过通行密钥验证。请重试。" @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "舒适" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "创建" @@ -10298,7 +10293,7 @@ msgstr "与 {userName} 创建新群聊" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "创建应用" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "创建类别" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "创建频道" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "创建社区" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "自定义警告文本" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "自定义…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "调试" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "调试频道" @@ -11164,7 +11159,7 @@ msgstr "调试消息" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "调试用户" @@ -11315,7 +11310,7 @@ msgstr "特拉华州" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "删除 {fileName}" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "删除账号" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "删除应用" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "删除附件" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "删除媒体" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "删除消息" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "删除其他成员的消息。置顶消息有单独的权限控制。" #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "删除通行密钥" @@ -11701,7 +11696,7 @@ msgstr "介绍一下你的社区" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "描述" @@ -11966,7 +11961,7 @@ msgstr "设备:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "直接输入" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "私信" @@ -12050,7 +12045,7 @@ msgstr "私信预览" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "私信" @@ -12077,14 +12072,14 @@ msgstr "直接上传已启用" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "停用" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "停用账号" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "已断开连接" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "可发现的社区" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "识别码" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "忽略" @@ -12477,7 +12472,7 @@ msgstr "私信和好友请求设置" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "私信已关闭" @@ -12607,7 +12602,7 @@ msgstr "不会屏蔽对方。你可以稍后重新打开。" #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "域名" @@ -12697,7 +12692,7 @@ msgstr "双击观看他人的直播。" #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "荷兰语" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "例如:YubiKey、iPhone、工作电脑" @@ -13092,7 +13087,7 @@ msgstr "编辑名称、描述和图标等社区整体设置。" #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "编辑群聊" @@ -13123,7 +13118,7 @@ msgstr "编辑媒体" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "编辑消息" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "在 {windowEndsOn} 之前可申请退款。此操作还会立即取消你的订阅。" #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "邮箱" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "表情已更新" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "表情" @@ -13525,7 +13520,7 @@ msgstr "收藏夹为空" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "启用" @@ -13680,7 +13675,7 @@ msgstr "开启移动推送通知" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "开启通知" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "启用你已配置凭据的集成。仅显示可用服务。" #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "启用双重认证" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "英语(美国)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "增强" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "输入新邮箱" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "如果你无法使用通行密钥,请输入其中一个备用码。" #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "输入其中一个备用码。" @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "输入文字" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "输入身份验证器应用中的 {digitCount} 位验证码或备用码。" @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "请输入验证码以继续。" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "输入身份验证器应用中的验证码。" @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "输入你的名字" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "请输入你的密码。" @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "已于 <0>{expiredDate} 到期。<1/> 已失效。你可以随时重新订阅。" #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "有效期" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "表情自动补全" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "表情选择器类别" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "表情准备失败" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "处理裁剪后的图片失败。请重试。" @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "启动单点登录失败" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "切换账号失败" @@ -15053,7 +15048,7 @@ msgstr "已收藏" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "收藏夹" @@ -15268,6 +15263,11 @@ msgstr "完成账号设置" msgid "Finish account setup first" msgstr "请先完成账号设置" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "在新标签页中完成。如果已关闭,请再次按“使用通行密钥继续”。" + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "文件夹名称" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "文件夹设置" @@ -15479,7 +15479,7 @@ msgstr "为自己" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "本次验证,你需要向我们发送短信,而不是接收我们发来的短信。" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "为保障你的账号安全,请先验证身份。" @@ -15606,7 +15606,7 @@ msgstr "忘记密码" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "忘记密码?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "仅限好友和小社区" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "好友的好友" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "通用" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "德国" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "获取 {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF 网址" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "全局快捷键" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "返回" @@ -16374,6 +16374,11 @@ msgstr "返回" msgid "Go back and enter a valid email." msgstr "请返回并输入有效的邮箱地址。" +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "返回 {productName} 以继续。" + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "隐藏失效日期脚注" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "隐藏收藏夹" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "隐藏已静音" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "隐藏已静音频道" @@ -17358,7 +17363,7 @@ msgstr "身份" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "空闲" @@ -17818,7 +17823,7 @@ msgstr "不当的个人资料" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "收件箱" @@ -17867,7 +17872,7 @@ msgstr "请填写社区 ID。" #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "邀请页预览" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "邀请成员" @@ -18456,7 +18461,7 @@ msgstr "邀请人:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "邀请" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "加入通话" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "加入社区" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "加入 {productName} 的日期" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "跳转" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "将成员踢出此社区。" #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "踢出成员" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "离开通话" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "退出社区" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "链接生成器" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "链接已复制" @@ -19859,8 +19864,8 @@ msgstr "恶意软件或危险链接" msgid "Malware, credential theft, or harmful files." msgstr "恶意软件、窃取凭据或有害文件。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "管理" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "管理账号" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "管理可访问你账号的应用和设备" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "立即将所有未读收件箱频道标为已读,无需确认" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "标为已读" @@ -20021,7 +20026,7 @@ msgstr "标记为剧透" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "标为未读" @@ -20169,7 +20174,7 @@ msgstr "成人社区" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "成人内容" @@ -20315,7 +20320,7 @@ msgstr "正在测量…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "成员" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "成员" @@ -20616,7 +20621,7 @@ msgstr "要提及此身份组吗?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "提及" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "更多媒体操作" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "更多选项" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "来电静音" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "将类别静音" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "将所有社区静音" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "将社区静音" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "将入场音静音" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "将收藏夹静音" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "名称至少需要 2 个字符" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "命名通行密钥" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "命名通行密钥表单" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "内布拉斯加州" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "还没有账号?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "内华达州" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "从不" @@ -22276,7 +22281,7 @@ msgstr "最新优先" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "下一步" @@ -22905,7 +22910,7 @@ msgstr "未找到用户" msgid "No verification is required." msgstr "无需验证。" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "没有可用的验证方式" @@ -23038,11 +23043,13 @@ msgstr "页面未找到" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "暂不" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "备注(仅自己可见)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "无" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "通知覆盖设置" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "通知设置" @@ -23152,7 +23159,7 @@ msgstr "通知音量" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "关" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "离线" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "确定" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "好的" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "在线" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "在线" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "只有拥有“{manageCommunityPermissionLabel}”权限的成员才能更改此项。" #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "仅提及" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "在设置中打开 {labelText}" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "打开{landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "已打开的私信" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "打开私信" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "打开发票 {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "打开链接" @@ -23850,7 +23857,7 @@ msgstr "打开快速切换" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "打开设置" @@ -23935,11 +23942,6 @@ msgstr "打开主题工作室浮窗" msgid "Open theme studio…" msgstr "打开主题工作室…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "从 {productName} 打开此窗口以使用你的通行密钥。" - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "选项" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "通行密钥" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "通行密钥名称" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "已更新通行密钥" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "通行密钥" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "通行密钥需要带有有效应用标识符的已签名 macOS 软件包。请安装已签名的桌面客户端,然后重试。" #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "密码" msgid "Password changed" msgstr "密码已更改" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "密码管理器可能无法在此网址上提供你的通行密钥。请改为在旧网址的弹出窗口中尝试。" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "请粘贴消息链接。" #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "个人词典" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "个人笔记" @@ -24885,7 +24887,7 @@ msgstr "置顶群聊" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "置顶消息" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "已置顶" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "已置顶私信" @@ -25020,7 +25022,7 @@ msgstr "平台管理员" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "播放" @@ -25318,6 +25320,11 @@ msgstr "请按下要绑定的按键、鼠标键或游戏手柄按键。按 Esc msgid "Press a shortcut…" msgstr "按下快捷键…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "按“继续”以使用你的通行密钥。" + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "主要语言" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "主导航" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "隐私政策" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "隐私设置" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "小提示:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "继续" @@ -26090,7 +26097,7 @@ msgstr "用 {emojiShortcode} 表情回应" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "重新生成会使当前令牌失效。请更新所有使用旧值的代码。" #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "注册" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "已注册通行密钥" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "移除横幅" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "移除书签" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "从词典中删除" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "从收藏夹中移除" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "已从收藏的 GIF 中移除" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "已从收藏夹中移除" @@ -27032,7 +27039,7 @@ msgstr "移除权限可能会限制机器人功能。" msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "解除禁言后,<0>{targetUserTag} 将可以再次发送消息、添加反应和加入语音频道。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "重命名" @@ -27119,7 +27126,7 @@ msgstr "回复" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "回复" @@ -27209,7 +27216,7 @@ msgstr "报告问题" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "举报消息" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "要求双重认证才能执行管理操作" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "要求使用通行密钥作为第二重验证" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "重置链接无效或已过期" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "重置成人内容确认状态" @@ -27880,7 +27887,7 @@ msgstr "搜图" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "反向图片搜索" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "查看并确认" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "查看可以访问你账号的应用。" @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "查看购买记录和退款选项" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "查看已登录的设备,并退出你不认识的会话。" @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "身份组已更新" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "身份组" @@ -28261,7 +28268,7 @@ msgstr "饱和度" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "范围" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "权限范围" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "屏幕阅读器" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "搜索频道、用户或社区" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "搜索好友" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "搜索选中文字" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "搜索设置" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "搜索设置…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "安全" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "安全功能" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "安全密钥" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "安全密钥/通行密钥" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "敏感媒体" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "已发送" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "会话" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "“{identifier}”的会话已过期。请重新登录。" @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "设置所有音效的音量。已单独设置音量的音效不受此项影响。" #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "已打开设置。" #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "设置版块" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "侧边栏" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "登录" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "登录以领取你的礼物" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "通过浏览器登录" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "使用通行密钥登录" @@ -30666,7 +30673,7 @@ msgstr "使用你所在组织的单点登录服务商登录。" #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "退出登录" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "登录信息" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "登录流程" @@ -31189,7 +31196,7 @@ msgstr "部分用户无法添加" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "出错了" @@ -31374,7 +31381,7 @@ msgstr "音量" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "声音" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "添加附件到消息输入框后,立即开始上传" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "发起视频通话" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "发起语音通话" @@ -31899,7 +31906,7 @@ msgstr "贴纸" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "贴纸:{stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "贴纸" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "停止信任所有链接?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "不再将通行密钥用于双重认证?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "屏蔽所有身份组提及" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "隐藏嵌入内容" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "文字频道" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "文字频道" @@ -33055,7 +33062,7 @@ msgstr "用你的手机给我们发短信" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "文本转语音" @@ -33119,6 +33126,11 @@ msgstr "操作未完成。部分社区可能已经退出,你的账号仍处于 msgid "That did not go through. Nothing changed. Try again." msgstr "操作未成功。没有任何更改。请重试。" +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "无法完成。请重试或取消。" + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "这看起来不是有效的颜色。请尝试使用十六进制、rgb()、hsl() 或 CSS 颜色名称。" @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "该图片无法使用。请尝试其他文件。" #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "图片无效。请尝试其他图片。" @@ -34035,11 +34047,11 @@ msgstr "这是第二个选项的描述" msgid "This is the third option description" msgstr "这是第三个选项的描述" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "这是你的最后一个通行密钥,而通行密钥是你的第二重验证。删除后,你账号的双重认证会被关闭,你当前的备用码也会失效。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "这是你的最后一个通行密钥。删除后,你将无法再使用通行密钥作为第二重验证。" @@ -34154,16 +34166,6 @@ msgstr "该参与者已拒听" msgid "This participant was deafened by moderators" msgstr "该参与者已被管理员设为拒听" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "此通行密钥请求无法验证。请关闭此窗口后重试。" - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "此通行密钥请求已超时。请关闭此窗口后重试。" - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "这会移除所有受信任的域名。你将再次看到所有域名的 msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "这将移除所有自定义快捷键,并重新启用所有内置快捷键。此操作无法撤销。" +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "此请求已过期。请返回并重试。" + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "此重置链接已过期。重置链接有效期为 1 小时。请重新请求一个。" @@ -34807,7 +34814,7 @@ msgstr "要将群聊所有权转让给 {userName} 吗?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "转让所有权" @@ -34823,7 +34830,7 @@ msgstr "已将所有权转让给 {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "翻译" @@ -34980,7 +34987,7 @@ msgstr "尝试其他变量名或清除搜索。" #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "重试" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "重试" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "请稍后重试。" @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "试试搜索“主题”、“通知”或“隐私”" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "改用安全密钥/通行密钥" @@ -35088,7 +35095,7 @@ msgstr "土耳其语" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "关闭" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "关闭此来源的音频共享,或稍后重试。" #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "关闭摄像头" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "请先关闭直播隐私模式,然后才能查看登录或账号安全详情。" #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "开启" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "双重认证" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "双重认证" @@ -35288,7 +35295,7 @@ msgstr "双重认证已停用" msgid "Two-factor authentication enabled" msgstr "双重认证已启用" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "双重认证已开启" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "取消屏蔽用户" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "未分类" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "为网站链接添加下划线" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "知道了" @@ -35643,7 +35650,7 @@ msgstr "通用回退。画质最低,但兼容所有设备。" #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "取消所有设备静音" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "取消类别静音" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "取消所有社区静音" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "取消社区静音" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "取消所有私信静音" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "取消收藏夹静音" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "取消置顶" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "取消置顶消息" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "取消置顶这条消息?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "已取消置顶私信" @@ -36193,6 +36200,11 @@ msgstr "更新邮箱" msgid "Update my status" msgstr "更新我的状态" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "更新通行密钥" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "更新禁言时长" msgid "Update your own nickname." msgstr "更新你的昵称。" +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "更新你的通行密钥" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "使用专用弹窗,为没有 {readMessageHistoryPermissionLabel} 权 msgid "Use a different email address and verify it with a code." msgstr "使用其他邮箱地址,并通过验证码验证。" -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "使用密码管理器中的通行密钥" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "使用实际值" msgid "Use alternative method" msgstr "使用其他方式" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "使用身份验证器应用生成双重认证验证码" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "仅当它明确违反 {productName} 规则且不符合上述任何选项时使用。" #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "将通行密钥用于双重认证?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "使用通行密钥,无需密码即可登录" @@ -36824,8 +36836,8 @@ msgstr "使用语音活动" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "使用操作系统自带的拼写检查器(如果可用)。否则,使用 {productName} 的应用内词典。" -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" msgstr "使用你的通行密钥" @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "用户控制项" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "用户调试" @@ -36972,7 +36984,7 @@ msgstr "用户音量" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "验证已取消" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "验证码" @@ -37185,7 +37197,7 @@ msgstr "验证邮件已发送。请检查你的收件箱。" msgid "Verification expired" msgstr "验证已过期" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "已认证社区" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "验证" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "验证连接" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "验证邮箱" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "验证身份表单" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "验证你的身份" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "验证邮箱后才能发送好友请求。" #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "请先验证你的邮箱,然后再添加通行密钥。" #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "请先验证你的邮箱,然后再添加身份验证器应用。" @@ -37571,7 +37583,7 @@ msgstr "查看和管理被封禁的用户。" msgid "View and manage every webhook configured across your community." msgstr "查看和管理社区中配置的所有 Webhook。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "查看和管理用于账号恢复的备用码" @@ -37605,7 +37617,7 @@ msgstr "查看频道" msgid "View channel members" msgstr "查看频道成员" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "查看备用码" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "查看套餐" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "查看个人资料" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "语音频道" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "语音频道" @@ -38073,7 +38085,7 @@ msgstr "已作废" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "请稍候" msgid "Waiting for connection..." msgstr "正在等待连接…" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "正在等待通行密钥…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "观看" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "观看直播" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "网页预览" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "欢迎回来" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "你目前不在任何社区中。" #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "你已屏蔽 {userName}。除非解除屏蔽,否则你无法发送消息。" @@ -39101,6 +39113,11 @@ msgstr "你可以在 14 天内取消删除流程" msgid "You can close this modal. The import will continue in the background." msgstr "你可以关闭此弹窗。导入将在后台继续。" +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "你可以关闭此标签页" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "现在可以关闭此页面,返回应用。" @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "你不能给自己发送好友请求。" #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "你无法在此频道发送消息。" @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "你仍需完成邮箱验证步骤。" #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "之后,你在输入密码后将不再需要验证通行密钥。你的身份验证器应用仍将作为你的第二重验证。" @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "你需要在所有已退出登录的设备上重新登录" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "在新设备上登录时,你需要使用其中一个通行密钥。如果所有通行密钥都丢失,你可能再也无法登录自己的账号。我们会为你保存备用码,让你仍有办法登录。" @@ -39918,12 +39935,12 @@ msgstr "你的账号注册时间太短,无法在此社区中发送消息。" msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "你的账号申请正在等待审核。管理员批准后即可登录。" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "你的账号需要多重身份验证,但此设备上未设置任何受支持的方式。请在已设置身份验证器应用或安全密钥的设备上登录,或联系支持团队。" #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "使用密码登录时,你的账号将不再受双重认证保护。你还会失去在要求双重认证的社区中的高级权限。" @@ -39941,16 +39958,6 @@ msgstr "你的操作未能完成,因为它被我们的安全系统标记了。 msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "你的申请正在审核中。你仍可以更新展示信息或撤回申请。" -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "你的浏览器阻止了通行密钥弹出窗口。请允许此网站的弹出窗口,然后重试。" - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "你的浏览器不支持在此域名上使用通行密钥。请更新浏览器,或使用密码和双重认证验证码登录。" - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "你的社区至少需要 {minMemberCount, plural, other {# 位成员}} msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "你的信用卡已检查完成。如果信用卡有效,成人内容将很快解锁。你可以关闭此标签页并返回应用。" +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "你的设备将要求你为 {name} 保存更新的通行密钥。它将替换旧的通行密钥。" + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "你的设备将要求你为 {name} 保存更新的通行密钥。请使用你刚才使用的同一部手机或安全密钥。" + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "缩放" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "放大" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/locales/zh-TW/messages.po b/fluxer_app/src/features/i18n/locales/zh-TW/messages.po index 255db8971..c55084f61 100644 --- a/fluxer_app/src/features/i18n/locales/zh-TW/messages.po +++ b/fluxer_app/src/features/i18n/locales/zh-TW/messages.po @@ -1473,7 +1473,7 @@ msgid "{memberCount} {rawMemberCount, plural, one {member} other {members}}" msgstr "{memberCount} {rawMemberCount, plural, one {位成員} other {位成員}}" #. Generic aria-label for an unread-mentions badge. Preserve {mentionCount}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:800 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:805 msgid "{mentionCount, plural, one {# mention} other {# mentions}}" msgstr "{mentionCount, plural, one {# 則提及} other {# 則提及}}" @@ -2370,8 +2370,8 @@ msgstr "6 個月" #. Placeholder for the MFA login one-time password field. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 -#: src/features/auth/flow/MfaScreen.tsx:23 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:73 +#: src/features/auth/flow/MfaScreen.tsx:22 msgid "6-digit code" msgstr "6 位數驗證碼" @@ -2649,7 +2649,7 @@ msgid "Account & premium overrides" msgstr "帳號與進階方案覆寫" #. Security settings section for third-party app access and signed-in devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:89 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:88 msgid "Account access" msgstr "帳號存取權" @@ -2807,7 +2807,7 @@ msgstr "按月訂閱中(已排定取消)" #. Short label in the appearance tab. Keep it concise. #. Short label in the inline. Keep it concise. #. Status label indicating a user is currently active. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:744 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:749 #: src/features/user/components/modals/tabs/appearance_tab/AppearanceTabInline.tsx:43 #: src/features/user/components/modals/tabs/AppearanceTab.tsx:51 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:430 @@ -2976,7 +2976,7 @@ msgstr "新增帳號以繼續。" msgid "Add an email and password to your account first." msgstr "請先為您的帳號新增電子郵件和密碼。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:309 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:296 msgid "Add an extra layer of security to your account" msgstr "為您的帳號多加一層安全防護" @@ -3001,7 +3001,7 @@ msgid "Add bot to a destination" msgstr "將機器人新增至目的地" #. Generic action label that opens the create-channel flow from inside a category or sidebar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:510 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:515 msgid "Add channel" msgstr "新增頻道" @@ -3082,7 +3082,7 @@ msgid "Add new reactions to messages." msgstr "為訊息加上新的反應。" #. Action label for adding a private note about a user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:454 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:459 msgid "Add note" msgstr "新增備註" @@ -3092,14 +3092,14 @@ msgid "Add override" msgstr "新增覆寫" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:452 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:439 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:130 msgid "Add passkey" msgstr "新增通行金鑰" #. Generic action label that opens the reaction picker for a message. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:522 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:527 #: src/features/input/state/input_keybind/shared.ts:17 msgid "Add reaction" msgstr "新增反應" @@ -3178,7 +3178,7 @@ msgid "Add to dictionary" msgstr "新增至字典" #. Action label that pins the current channel, DM, or attachment to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:322 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:327 msgid "Add to favorites" msgstr "加入我的最愛" @@ -3287,7 +3287,7 @@ msgid "Added to favorite GIFs" msgstr "已加入我的最愛 GIF" #. Toast confirming an item was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:615 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:620 msgid "Added to favorites" msgstr "已加入我的最愛" @@ -3296,11 +3296,11 @@ msgstr "已加入我的最愛" msgid "Added to saved media" msgstr "已新增至已儲存的媒體" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:508 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:495 msgid "Added: {createdDate}" msgstr "新增日期:{createdDate}" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:504 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:491 msgid "Added: {createdDate} • last used: {lastUsedDate}" msgstr "新增日期:{createdDate} • 上次使用:{lastUsedDate}" @@ -3556,7 +3556,7 @@ msgstr "所有語言" #. Short label in the visual tab. Keep it concise. #: src/features/guild/components/modals/guild_tabs/guild_overview_tab/sections/DefaultNotificationsSection.tsx:20 #: src/features/guild/utils/guild_tabs/audit_log/AuditLogSharedMessages.ts:86 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:338 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 #: src/features/user/components/modals/tabs/accessibility_tab/VisualTab.tsx:21 msgid "All messages" msgstr "所有訊息" @@ -3786,7 +3786,7 @@ msgid "Already deleted" msgstr "已刪除" #. Short prompt shown near links that open sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:90 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:95 msgid "Already have an account?" msgstr "已經有帳號了?" @@ -4286,7 +4286,7 @@ msgid "App zoom" msgstr "App 縮放" #. Setting label for the global UI zoom level. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:776 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:781 msgid "App zoom level" msgstr "應用程式縮放等級" @@ -4410,7 +4410,7 @@ msgid "Approve" msgstr "核准" #. Hint under the sign-in option on fluxer.com that pairs a newly installed app with the old installed app. productName is the app name. -#: src/features/auth/flow/AuthLoginLayout.tsx:74 +#: src/features/auth/flow/AuthLoginLayout.tsx:79 msgid "Approve this app from the {productName} app you already use. No password needed." msgstr "從您正在使用的 {productName} 應用程式核准此應用程式。無需密碼。" @@ -4481,7 +4481,7 @@ msgid "Are you sure you want to delete the category \"{categoryName}\"? This can msgstr "確定要刪除「{categoryName}」類別嗎?此動作無法復原。" #. placeholder {0}: passkey.name -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:240 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:227 msgid "Are you sure you want to delete the passkey <0>{0}?" msgstr "您確定要刪除通行金鑰 <0>{0} 嗎?" @@ -4493,7 +4493,7 @@ msgstr "確定要刪除此附件嗎?此動作無法復原,且會將此訊息 msgid "Are you sure you want to delete this community? This action cannot be undone. All channels, messages, and settings will be permanently deleted." msgstr "確定要刪除這個社群嗎?此動作無法復原。所有頻道、訊息和設定都將永久刪除。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:235 msgid "Are you sure you want to delete this passkey?" msgstr "確定要刪除此通行金鑰嗎?" @@ -4573,7 +4573,7 @@ msgid "Ask before starting calls" msgstr "開始通話前詢問" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:462 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:449 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:154 msgid "Ask for a passkey after your password when you sign in" msgstr "登入時,在輸入密碼後要求使用通行金鑰" @@ -4690,7 +4690,7 @@ msgstr "附件" #. Generic tab / section / category label for audio content or settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:250 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:255 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:170 msgid "Audio" msgstr "音訊" @@ -4851,14 +4851,14 @@ msgstr "驗證" msgid "Authenticator" msgstr "驗證器" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:321 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:308 msgid "Authenticator app" msgstr "驗證器應用程式" #. Label for the MFA login one-time password field from an authenticator app or backup code. #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 -#: src/features/auth/flow/MfaScreen.tsx:19 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 +#: src/features/auth/flow/MfaScreen.tsx:18 msgid "Authenticator code" msgstr "驗證器代碼" @@ -4928,7 +4928,7 @@ msgstr "已授權的應用程式" #. Settings section label for OAuth applications authorized by the user. #. User settings tab for OAuth or connected apps authorized by the user. #: src/features/user/components/modals/tabs/account_security_tab/AccountManagementModals.tsx:17 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:97 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:96 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:507 #: src/features/user/components/settings_utils/search_index/AuthorizedAppsIndex.ts:10 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:151 @@ -5225,6 +5225,11 @@ msgstr "目前離開中" msgid "Back" msgstr "返回" +#. Button on the expired passkey page that returns to the app. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:44 +msgid "Back to {productName}" +msgstr "返回 {productName}" + #. Button label on the PiP overlay. Returns to the full call view. #: src/features/voice/components/pip_overlay/PiPHeader.tsx:10 msgid "Back to call" @@ -5257,12 +5262,12 @@ msgid "Back to roles" msgstr "返回身分組" #. Back-navigation label that returns from a nested settings pane to the settings tab list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:119 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:124 msgid "Back to settings" msgstr "返回設定" #. Navigation label that returns from recovery, MFA, or related authentication flows to sign-in. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:94 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:99 msgid "Back to sign-in" msgstr "返回登入" @@ -5342,8 +5347,8 @@ msgstr "倒退鍵" #. Label and placeholder for the MFA login field when the only code the account can use is a backup code. #. Label and placeholder for the code field in the authentication sudo verification modal when the only code the account can use is a backup code. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:69 -#: src/features/auth/flow/MfaScreen.tsx:39 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:77 +#: src/features/auth/flow/MfaScreen.tsx:38 msgid "Backup code" msgstr "備用碼" @@ -5351,7 +5356,7 @@ msgstr "備用碼" #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:18 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:391 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:378 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:74 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:68 msgid "Backup codes" @@ -5749,7 +5754,7 @@ msgstr "已達書籤上限" #. Generic action label that saves a message to the bookmarks list. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:526 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:531 #: src/features/input/state/input_keybind/shared.ts:265 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:66 msgid "Bookmark message" @@ -6228,7 +6233,7 @@ msgstr "通話" #. Generic voice/video setting label for the active camera device. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short label in the video tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:720 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:725 #: src/features/user/components/modals/tabs/UserVideoTab.tsx:98 #: src/features/user/components/settings_utils/section_registry/VoiceVideoSections.ts:162 #: src/features/voice/utils/SettingsDeviceOptions.ts:24 @@ -6288,7 +6293,7 @@ msgstr "相機關閉" #. Generic action label that enables the local camera. #. Notification sound setting label. Sound played when the user turns their camera on in a call. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:724 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:729 #: src/features/notification/utils/SoundLabels.ts:52 msgid "Camera on" msgstr "相機開啟" @@ -6364,9 +6369,9 @@ msgstr "無法在這裡上傳檔案" #: src/features/auth/components/modals/ClaimAccountModal.tsx:216 #: src/features/auth/components/modals/ClaimAccountModal.tsx:232 #: src/features/auth/components/modals/DeviceRevokeModal.tsx:72 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:138 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:80 #: src/features/auth/components/modals/PasskeyPinModal.tsx:104 -#: src/features/auth/components/modals/SudoVerificationModal.tsx:328 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:400 #: src/features/auth/flow/BrowserLoginHandoffModal.tsx:164 #: src/features/channel/components/bottomsheets/CreateDMBottomSheet.tsx:137 #: src/features/channel/components/MentionEveryonePopout.tsx:177 @@ -6380,7 +6385,7 @@ msgstr "無法在這裡上傳檔案" #: src/features/expressions/components/modals/EditFavoriteMemeModal.tsx:87 #: src/features/expressions/components/modals/EditGuildStickerModal.tsx:116 #: src/features/guild/components/modals/TransferOwnershipModal.tsx:91 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:98 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:103 #: src/features/input/state/input_keybind/shared.ts:137 #: src/features/invite/components/modals/InviteModal.tsx:552 #: src/features/messaging/components/modals/AttachmentEditModal.tsx:133 @@ -6677,7 +6682,7 @@ msgid "Change emoji" msgstr "變更表情符號" #. Generic action label that opens the friend-nickname edit flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:538 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:543 msgid "Change friend nickname" msgstr "更改好友的暱稱" @@ -6721,7 +6726,7 @@ msgid "Change my group nickname" msgstr "變更我的群組暱稱" #. Action label for changing a user nickname in a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:470 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:475 msgid "Change nickname" msgstr "更改暱稱" @@ -7077,7 +7082,7 @@ msgid "Channel actions" msgstr "頻道操作" #. Toast confirming a channel was added to the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:792 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:797 msgid "Channel added to favorites" msgstr "已將頻道加到我的最愛" @@ -7098,14 +7103,14 @@ msgid "Channel created" msgstr "頻道已建立" #. Title of the developer-mode channel debug modal (distinct from the action label that opens it). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:546 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:551 msgid "Channel debug" msgstr "頻道偵錯" #. Audit log entry label. Past-tense action describing that a channel was deleted. #. Toast confirming a channel was successfully deleted. #: src/features/app/config/AuditLogConstants.ts:20 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:760 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:765 msgid "Channel deleted" msgstr "頻道已刪除" @@ -7195,7 +7200,7 @@ msgid "Channel record" msgstr "頻道紀錄" #. Toast confirming a channel was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:788 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:793 msgid "Channel removed from favorites" msgstr "已將頻道從我的最愛移除" @@ -7674,7 +7679,7 @@ msgid "Choose your profile accent color" msgstr "選擇您的個人檔案主題顏色" #. Generic account action label that opens or submits the flow to secure an unclaimed account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:152 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:157 msgid "Claim account" msgstr "認領帳號" @@ -7715,7 +7720,7 @@ msgstr "請先認領帳號並驗證電子郵件,才能傳送檢舉。" msgid "Claim your account by adding an email and password. We will send a verification code to confirm your email before finishing." msgstr "請新增電子郵件和密碼來認領您的帳號。完成前我們會傳送驗證碼,以確認您的電子郵件。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:290 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:277 msgid "Claim your account to access security features like two-factor authentication and passkeys." msgstr "認領您的帳號,即可使用雙重驗證和通行金鑰等安全功能。" @@ -7902,7 +7907,7 @@ msgid "Clear quick CSS?" msgstr "要清除快速 CSS 嗎?" #. Generic short button / icon label that clears the active search query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:514 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:519 #: src/features/theme_studio/sections/TokensSection.tsx:205 msgid "Clear search" msgstr "清除搜尋" @@ -8103,7 +8108,7 @@ msgstr "已關閉複製功能" #. Aria-label / button text for dismissing a modal, sheet, popout, or overlay. Short. #. Native Window menu item that closes the focused desktop window. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:306 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:311 #: src/features/platform/utils/DesktopLocaleBridge.ts:138 msgid "Close" msgstr "關閉" @@ -8160,11 +8165,9 @@ msgstr "關閉至選單列" msgid "Close to tray" msgstr "關閉至系統匣" -#. Button in the passkey pop-up window that closes it after an error. #. Button label in a popped-out voice window titlebar that closes the popped-out window. #. Short label in the app layout native titlebar. #: src/features/app/components/layout/NativeWindowControls.tsx:25 -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:31 #: src/features/voice/components/popout/PopoutTitlebar.tsx:26 msgid "Close window" msgstr "關閉視窗" @@ -8456,7 +8459,7 @@ msgstr "通訊" #. Summary chip on the confirm step indicating that community channels are included. #. Summary row label on the confirm step showing the community filter selection. #. Switch label for including community (guild) channels in a data export / deletion scope. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:222 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:227 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:144 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:212 #: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:264 @@ -8522,7 +8525,7 @@ msgid "Community debug" msgstr "社群偵錯" #. Notification level option indicating the channel inherits the community default. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:764 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:769 msgid "Community default" msgstr "社群預設" @@ -8577,7 +8580,7 @@ msgstr "社群成員紀錄" #. Privacy option label for people who share a community with the user. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:450 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:455 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:144 msgid "Community members" msgstr "社群成員" @@ -8622,7 +8625,7 @@ msgid "Community notification level" msgstr "社群通知等級" #. Shared label or heading for per-community notification settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:334 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:339 msgid "Community notification settings" msgstr "社群通知設定" @@ -8727,7 +8730,7 @@ msgid "Comparison" msgstr "比較" #. Action label that starts the credit-card check used to unlock mature content in supported regions. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:290 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:295 msgid "Complete mature content check" msgstr "完成成人內容檢查" @@ -9093,7 +9096,7 @@ msgstr "連線:{connectionId}" #. Section header for the linked-accounts area in privacy & safety settings. #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings section label for external accounts and verified domains. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:415 #: src/features/user/components/popouts/UserProfileShared.tsx:614 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:8 #: src/features/user/components/settings_utils/section_registry/GeneralSettingsSections.ts:30 @@ -9203,7 +9206,7 @@ msgstr "按一下左鍵(在按鈕上)或按一下右鍵(在其他元素上 #: src/features/auth/components/pages/oauth_authorize_page/OAuthAccountStep.tsx:34 #: src/features/auth/flow/HandoffApprovalFlow.tsx:109 #: src/features/connection/components/modals/AddConnectionModal.tsx:384 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:712 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:717 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:397 #: src/features/user/components/modals/tabs/AuthorizedAppsTab.tsx:182 msgid "Continue" @@ -9214,11 +9217,6 @@ msgstr "繼續" msgid "Continue to checkout" msgstr "繼續結帳" -#. Body of the passkey pop-up window when adding a new passkey. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:27 -msgid "Continue to create a passkey for {host}" -msgstr "繼續為 {host} 建立通行金鑰" - #. Button or menu action label in the report action utils helper. Keep it concise. Keep the tone plain and specific. #: src/features/moderation/utils/ReportActionUtils.tsx:37 msgid "Continue to report community" @@ -9229,7 +9227,9 @@ msgstr "繼續檢舉社群" msgid "Continue to report user" msgstr "繼續檢舉使用者" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:287 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:326 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:339 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:362 msgid "Continue with passkey" msgstr "使用通行金鑰繼續" @@ -9238,11 +9238,6 @@ msgstr "使用通行金鑰繼續" msgid "Continue with SSO" msgstr "使用 SSO 繼續" -#. Body of the passkey pop-up window when signing in or confirming identity. host is a web address such as fluxer.com. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:22 -msgid "Continue with your passkey to sign in to {host}" -msgstr "繼續使用您的通行金鑰登入 {host}" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:31 msgid "Contrast" @@ -9319,7 +9314,7 @@ msgstr "協調對個人或社群發動突襲、集體圍攻或騷擾。" #. Generic short status label confirming a value was copied to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:381 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:386 msgid "Copied" msgstr "已複製" @@ -9408,7 +9403,7 @@ msgid "Copy category ID" msgstr "複製類別 ID" #. Developer-mode action that copies a channel snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:397 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:402 msgid "Copy channel ID" msgstr "複製頻道 ID" @@ -9421,12 +9416,12 @@ msgstr "複製頻道連結" #. Action label that copies a code block to the clipboard. #: src/features/auth/flow/HandoffCodeDisplay.tsx:165 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:393 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:398 msgid "Copy code" msgstr "複製代碼" #. Developer-mode action that copies a community snowflake/ID to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:728 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:733 msgid "Copy community ID" msgstr "複製社群 ID" @@ -9529,7 +9524,7 @@ msgid "Copy invite URL" msgstr "複製邀請網址" #. Generic action label that copies a URL to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:740 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:745 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:330 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:145 msgid "Copy link" @@ -9562,7 +9557,7 @@ msgstr "複製訊息" #. Developer-mode action that copies a message snowflake/ID to the clipboard. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:732 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:737 #: src/features/input/state/input_keybind/shared.ts:277 msgid "Copy message ID" msgstr "複製訊息 ID" @@ -9570,7 +9565,7 @@ msgstr "複製訊息 ID" #. Generic action label that copies a permalink to the selected message. #. IAR modal: quick-action card title. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:518 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:523 #: src/features/input/state/input_keybind/shared.ts:273 #: src/features/moderation/components/report_modal/IARModalCopy.ts:389 msgid "Copy message link" @@ -9626,7 +9621,7 @@ msgstr "複製貼圖網址" #. Action label that copies a message body / selected text to the clipboard. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:389 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:394 #: src/features/user/components/settings_utils/search_index/AccessibilityIndex.ts:93 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:83 msgid "Copy text" @@ -9638,12 +9633,12 @@ msgstr "將設定金鑰複製到您的驗證器應用程式。" #. Developer-mode action that copies a user snowflake/ID to the clipboard. #: src/features/app/components/floating/UserAreaPopout.tsx:692 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:172 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:177 msgid "Copy user ID" msgstr "複製使用者 ID" #. Action that copies a user username (handle) to the clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:736 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:741 msgid "Copy username" msgstr "複製使用者名稱" @@ -9841,7 +9836,7 @@ msgid "Couldn't delete application" msgstr "無法刪除應用程式" #. Title of the error modal shown when removing a registered passkey fails. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:39 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:38 msgid "Couldn't delete passkey" msgstr "無法刪除通行金鑰" @@ -10085,7 +10080,7 @@ msgid "Couldn't send invite" msgstr "無法傳送邀請" #. Toast shown when sending an invite (group DM or community) fails. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:704 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:709 msgid "Couldn't send invite. Try again." msgstr "無法傳送邀請。請再試一次。" @@ -10182,7 +10177,7 @@ msgid "Couldn't update mention suppression bypass" msgstr "無法更新提及抑制略過設定" #. Title of the error modal shown when the passkey two-factor setting could not be saved. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:85 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:84 msgid "Couldn't update passkey two-factor authentication" msgstr "無法更新通行金鑰雙重驗證" @@ -10206,6 +10201,11 @@ msgstr "無法更新替代文字。請再試一次。" msgid "Couldn't update voice activity sharing right now" msgstr "目前無法更新語音活動分享設定" +#. Error shown in the passkey update modal when saving the updated passkey failed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:47 +msgid "Couldn't update your passkey. Try again." +msgstr "無法更新您的通行金鑰。請再試一次。" + #. Title of the error modal shown when uploading a profile avatar fails. #: src/features/user/components/modals/tabs/my_profile_tab/AvatarUploader.tsx:94 msgid "Couldn't upload avatar" @@ -10216,11 +10216,6 @@ msgstr "無法上傳大頭貼" msgid "Couldn't upload banner" msgstr "無法上傳橫幅" -#. Error shown when the pop-up window used for password manager passkeys does not finish. -#: src/features/auth/utils/PasskeyBridge.ts:29 -msgid "Couldn't use your passkey in the pop-up window. Try again." -msgstr "無法在彈出式視窗中使用您的通行金鑰。請再試一次。" - #. Desktop handoff flow error shown when verifying the pairing code fails for an unexpected reason. #: src/features/auth/flow/auth_login_core/useDesktopHandoffFlow.ts:14 msgid "Couldn't verify that code. Try again." @@ -10231,8 +10226,8 @@ msgstr "無法驗證該代碼。請再試一次。" msgid "Couldn't verify the connection" msgstr "無法驗證連結" -#. Sudo (re-auth) modal toast error shown when passkey verification fails. Keep plain. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:36 +#. Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain. +#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 msgid "Couldn't verify with passkey. Try again." msgstr "無法使用通行金鑰驗證。請再試一次。" @@ -10270,7 +10265,7 @@ msgid "Cozy" msgstr "舒適" #. Generic primary action label that creates the item described by the current dialog or form. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:153 msgid "Create" msgstr "建立" @@ -10298,7 +10293,7 @@ msgstr "與 {userName} 建立新群組" #. Generic authentication action label for starting or submitting account creation. #: src/features/auth/components/pages/RegisterPage.tsx:46 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:82 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:87 #: src/features/invite/components/modals/InvitePagePreviewModal.tsx:162 #: src/features/theme/components/pages/ThemeRegisterPage.tsx:129 msgid "Create account" @@ -10336,17 +10331,17 @@ msgid "Create application" msgstr "建立應用程式" #. Generic action label that creates a new channel category or favorites category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:198 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:203 msgid "Create category" msgstr "建立類別" #. Action label that opens the create-channel flow. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:474 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:479 msgid "Create channel" msgstr "建立頻道" #. Generic action or title label for creating a new community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:156 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:161 msgid "Create community" msgstr "建立社群" @@ -10844,7 +10839,7 @@ msgid "Custom warning text" msgstr "自訂警告文字" #. Last "Custom…" option in dropdown menus that opens a custom-value picker. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:768 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:773 msgid "Custom…" msgstr "自訂…" @@ -11136,7 +11131,7 @@ msgid "Debug" msgstr "偵錯" #. Developer-mode action that opens the channel debug panel. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:401 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:406 msgid "Debug channel" msgstr "偵錯頻道" @@ -11164,7 +11159,7 @@ msgstr "偵錯訊息" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Developer-mode action that opens a user debug panel. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:167 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:542 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:547 msgid "Debug user" msgstr "偵錯使用者" @@ -11315,7 +11310,7 @@ msgstr "德拉瓦州" #: src/features/moderation/components/report_modal/IARModalCopy.ts:109 #: src/features/platform/utils/DesktopLocaleBridge.ts:76 #: src/features/theme_studio/sections/LibrarySection.tsx:514 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:530 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:517 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:117 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:290 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:238 @@ -11368,7 +11363,7 @@ msgid "Delete {fileName}" msgstr "刪除「{fileName}」" #. Destructive action or section label for permanently deleting the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:442 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:447 msgid "Delete account" msgstr "刪除帳號" @@ -11389,7 +11384,7 @@ msgid "Delete application" msgstr "刪除應用程式" #. Generic action label that removes an attachment from the upload tray / message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:748 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:753 msgid "Delete attachment" msgstr "刪除附件" @@ -11452,7 +11447,7 @@ msgid "Delete media" msgstr "刪除媒體" #. Destructive action label for deleting a message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:458 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:463 msgid "Delete message" msgstr "刪除訊息" @@ -11488,7 +11483,7 @@ msgid "Delete other members' messages. Pinning is controlled separately." msgstr "刪除其他成員的訊息。釘選另有獨立權限。" #. Security settings: confirmation modal title and primary button for removing a registered passkey. Destructive action; keep plain and direct. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:34 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:33 msgid "Delete passkey" msgstr "刪除通行金鑰" @@ -11701,7 +11696,7 @@ msgstr "描述您的社群主題" #. Generic form-field label for a free-form description. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/guild_tabs/GuildDiscoveryTab.tsx:422 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:498 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:503 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:137 msgid "Description" msgstr "說明" @@ -11966,7 +11961,7 @@ msgstr "裝置:" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Tab label in the screen-share picker. Lists cameras and virtual capture devices. #. User settings tab for managing devices linked to the current account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:105 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:104 #: src/features/user/components/modals/tabs/DevicesTab.tsx:530 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:11 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:82 @@ -12021,7 +12016,7 @@ msgstr "直接輸入" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:14 #: src/features/channel/components/channel_header_components/developer_tools/MockingMenu.tsx:398 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:562 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:85 msgid "Direct message" msgstr "私訊" @@ -12050,7 +12045,7 @@ msgstr "私訊預覽" #. Summary row label for the direct messages choice in the setup wizard. #: src/features/app/components/setup/SetupWizardSteps.tsx:348 #: src/features/channel/components/direct_message/DirectMessageList.tsx:629 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:218 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:223 #: src/features/user/components/modals/tabs/privacy_safety_tab/ConnectionsTab.tsx:255 msgid "Direct messages" msgstr "私訊" @@ -12077,14 +12072,14 @@ msgstr "直接上傳已啟用" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Short footer action in the screen-share picker that disables screen-share preview frame uploads. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:355 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:342 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:158 #: src/features/voice/components/modals/ScreenSharePickerModal.tsx:279 msgid "Disable" msgstr "停用" #. Destructive action or section label for temporarily disabling the current account. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:438 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:443 msgid "Disable account" msgstr "停用帳號" @@ -12309,7 +12304,7 @@ msgid "Disconnected" msgstr "已中斷連線" #. Label for a community that anyone can find through discovery. Used in the community badge and as the community subtitle in expression info cards. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:679 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 msgid "Discoverable community" msgstr "可被探索的社群" @@ -12363,7 +12358,7 @@ msgid "Discriminator" msgstr "識別碼" #. Generic button label that dismisses a banner, modal, sheet, or prompt without taking the primary action. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:310 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:315 msgid "Dismiss" msgstr "關閉" @@ -12477,7 +12472,7 @@ msgstr "私訊和好友邀請設定" #. Channel details bottom sheet label or action (channel type, settings, toast, confirmation, or notification option). #. Generic success-toast label confirming that a DM channel was closed. #: src/features/channel/components/bottomsheets/channel_details_bottom_sheet/ChannelDetailsBottomSheetShared.ts:87 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:558 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:563 msgid "DM closed" msgstr "私訊已關閉" @@ -12607,7 +12602,7 @@ msgstr "不會封鎖。您可以稍後再重新開啟。" #. Generic form-field / table-column label for an internet domain. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:772 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:777 #: src/features/user/components/settings_utils/search_index/LinkedAccountsIndex.ts:28 msgid "Domain" msgstr "網域" @@ -12697,7 +12692,7 @@ msgstr "對某人按兩下即可觀看他們的直播。" #. Generic action label that downloads an attachment / file. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/auth/components/modals/BackupCodesModal.tsx:85 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:377 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:382 #: src/features/theme_studio/sections/QuickCssSection.tsx:205 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:216 msgid "Download" @@ -12974,7 +12969,7 @@ msgid "Dutch" msgstr "荷蘭文" #. Placeholder or example text in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:35 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 msgid "e.g., YubiKey, iPhone, work computer" msgstr "例如:YubiKey、iPhone、公司電腦" @@ -13092,7 +13087,7 @@ msgstr "編輯全域設定,例如名稱、說明和圖示。" #. Action label for editing a group DM (name, icon, members). #: src/features/channel/components/direct_message/GroupDMWelcomeSection.tsx:103 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:466 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:471 msgid "Edit group" msgstr "編輯群組" @@ -13123,7 +13118,7 @@ msgstr "編輯媒體" #. Generic action label that opens the message edit composer. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:708 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:713 #: src/features/input/state/input_keybind/shared.ts:9 msgid "Edit message" msgstr "編輯訊息" @@ -13248,7 +13243,7 @@ msgid "Eligible for a refund until {windowEndsOn}. This will also cancel your su msgstr "在 {windowEndsOn} 前可申請退款。這也會立即取消您的訂閱。" #. Generic form-field label for an email address. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:206 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:211 #: src/features/moderation/components/report/ReportBreadcrumbs.tsx:28 msgid "Email" msgstr "電子郵件" @@ -13492,7 +13487,7 @@ msgid "Emoji updated" msgstr "表情符號已更新" #. Generic tab / section / category label for emojis. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:242 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:247 msgid "Emojis" msgstr "表情符號" @@ -13525,7 +13520,7 @@ msgstr "沒有最愛項目" #: src/features/app/components/layout/app_layout/nagbars/LinuxInputAccessNagbar.tsx:32 #: src/features/app/components/layout/GuildLayout.tsx:54 #: src/features/invite/components/DisableInvitesButton.tsx:27 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:373 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:360 #: src/features/user/components/modals/tabs/components/LinuxInputAccessSection.tsx:23 msgid "Enable" msgstr "啟用" @@ -13680,7 +13675,7 @@ msgstr "開啟行動裝置推播通知" #. Generic action label / toggle that turns on push or desktop notifications. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:780 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:785 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:127 msgid "Enable notifications" msgstr "開啟通知" @@ -13760,7 +13755,7 @@ msgid "Enable the integrations whose credentials you have configured. Only avail msgstr "啟用您已設定好認證資訊的整合功能。僅顯示可用的服務。" #. Generic action label that opens or starts two-factor authentication setup. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:168 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:173 msgid "Enable two-factor auth" msgstr "啟用雙重驗證" @@ -13895,7 +13890,7 @@ msgid "English (US)" msgstr "英文(美國)" #. Generic radio / dropdown option label for an "enhanced" tier. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:784 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:789 msgid "Enhanced" msgstr "加強" @@ -14006,12 +14001,12 @@ msgid "Enter new email" msgstr "輸入新電子郵件" #. MFA code entry instructions shown when the account uses passkeys as its second factor. -#: src/features/auth/flow/MfaScreen.tsx:43 +#: src/features/auth/flow/MfaScreen.tsx:42 msgid "Enter one of your backup codes if you can't use your passkey." msgstr "如果您無法使用通行金鑰,請輸入其中一組備用碼。" #. Body text in the authentication sudo verification modal, shown when the only code the account can enter is a backup code. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:56 msgid "Enter one of your backup codes." msgstr "請輸入其中一組備用碼。" @@ -14031,7 +14026,7 @@ msgid "Enter text" msgstr "輸入文字" #. MFA code entry instructions. digitCount is the expected authenticator-code length. -#: src/features/auth/flow/MfaScreen.tsx:31 +#: src/features/auth/flow/MfaScreen.tsx:30 msgid "Enter the {digitCount}-digit code from your authenticator app or a backup code." msgstr "請輸入驗證器應用程式中的 {digitCount} 位數驗證碼,或輸入一組備用碼。" @@ -14065,7 +14060,7 @@ msgid "Enter the code before continuing." msgstr "請先輸入驗證碼再繼續。" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:44 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:52 msgid "Enter the code from your authenticator app." msgstr "請輸入驗證器應用程式中的代碼。" @@ -14149,7 +14144,7 @@ msgid "Enter your name" msgstr "輸入您的名字" #. Body text in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:40 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:48 msgid "Enter your password." msgstr "請輸入您的密碼。" @@ -14493,7 +14488,7 @@ msgid "Expired on <0>{expiredDate}. <1/> are no longer active. You can resub msgstr "已於 <0>{expiredDate} 到期。<1/> 已失效。您可以隨時重新訂閱。" #. Generic column or field label for an expiration date. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:430 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:435 msgid "Expires" msgstr "到期" @@ -14584,7 +14579,7 @@ msgid "Expression autocomplete" msgstr "表情符號自動完成" #. Aria label for the expression picker category nav. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:752 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:757 msgid "Expression picker categories" msgstr "表情符號選取器類別" @@ -14823,7 +14818,7 @@ msgid "Failed to prepare emojis" msgstr "無法準備表情符號" #. Toast error shown by image-cropping uploaders (avatar, banner, community icon) when the cropped image cannot be processed. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:405 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:410 msgid "Failed to process the cropped image. Try again." msgstr "無法處理裁切後的圖片。請再試一次。" @@ -14901,7 +14896,7 @@ msgid "Failed to start SSO" msgstr "無法啟動單一登入" #. Login flow error shown when switching to a saved account fails. -#: src/features/auth/flow/AuthLoginLayout.tsx:58 +#: src/features/auth/flow/AuthLoginLayout.tsx:63 msgid "Failed to switch account" msgstr "無法切換帳號" @@ -15053,7 +15048,7 @@ msgstr "我的最愛" #. Generic section heading / category label for favorites. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:258 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:263 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:426 msgid "Favorites" msgstr "我的最愛" @@ -15268,6 +15263,11 @@ msgstr "完成帳號設定" msgid "Finish account setup first" msgstr "請先完成帳號設定" +#. Sudo (re-auth) modal hint shown after the passkey button opened a new tab to confirm the passkey. "Continue with passkey" is the button label. Keep plain. +#: src/features/auth/components/modals/SudoVerificationModal.tsx:83 +msgid "Finish in the new tab. If you closed it, press Continue with passkey again." +msgstr "在新分頁中完成。如果您已關閉該分頁,請再按一次「使用通行金鑰繼續」。" + #. Button that saves the configuration and completes the setup wizard. #. Setup wizard finish step title. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:85 @@ -15391,7 +15391,7 @@ msgid "Folder name" msgstr "資料夾名稱" #. Shared label for the settings menu or modal that configures a community folder. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:266 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:271 msgid "Folder settings" msgstr "資料夾設定" @@ -15479,7 +15479,7 @@ msgstr "自己使用" msgid "For this check, you send us a text message instead of receiving one from us." msgstr "這次驗證,您需要傳送簡訊給我們,而不是接收我們的簡訊。" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:225 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:268 msgid "For your security, please confirm it's you to continue." msgstr "為了您的帳戶安全,請驗證是您本人操作,才能繼續。" @@ -15606,7 +15606,7 @@ msgstr "忘記密碼" #. Authentication link label that opens password recovery. #: src/features/auth/components/pages/ForgotPasswordPage.tsx:71 -#: src/features/auth/flow/AuthLoginLayout.tsx:70 +#: src/features/auth/flow/AuthLoginLayout.tsx:75 msgid "Forgot your password?" msgstr "忘記密碼?" @@ -15810,7 +15810,7 @@ msgid "Friends and small communities only" msgstr "僅限好友和小型社群" #. Privacy option label for people connected through mutual friends. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:446 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:451 msgid "Friends of friends" msgstr "好友的好友" @@ -16018,7 +16018,7 @@ msgid "GDPR" msgstr "GDPR" #. Generic section label for broad or default settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:123 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:128 msgid "General" msgstr "一般" @@ -16066,7 +16066,7 @@ msgid "Germany" msgstr "德國" #. Generic upsell CTA button to start the Plutonium purchase flow. Preserve {premiumProductName}. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:796 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:801 msgid "Get {premiumProductName}" msgstr "取得 {premiumProductName}" @@ -16159,7 +16159,7 @@ msgid "GIF URLs" msgstr "GIF 網址" #. Generic tab / section / category label for animated GIFs. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:246 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:251 msgid "GIFs" msgstr "GIF" @@ -16365,7 +16365,7 @@ msgid "Global shortcut" msgstr "全域快捷鍵" #. Generic back-navigation label in modals, settings tabs, and nested flows. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:112 msgid "Go back" msgstr "返回" @@ -16374,6 +16374,11 @@ msgstr "返回" msgid "Go back and enter a valid email." msgstr "返回並輸入有效的電子郵件。" +#. Body of the page shown after a passkey confirmation finished in a separate tab. productName is the app name. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:52 +msgid "Go back to {productName} to continue." +msgstr "返回 {productName} 以繼續。" + #. Accessible label for the community row of an expression info card, which opens a community the viewer is already a member of. {communityName} is the community name. #: src/features/expressions/components/ExpressionInfoCard.tsx:89 msgid "Go to {communityName}" @@ -16994,7 +16999,7 @@ msgid "Hide expiration footnotes" msgstr "隱藏到期註腳" #. Toggle / action label that collapses or hides the favorites section. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:696 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:701 msgid "Hide favorites" msgstr "隱藏我的最愛" @@ -17025,7 +17030,7 @@ msgid "Hide muted" msgstr "隱藏已靜音" #. Toggle label in community / sidebar settings that collapses muted channels from the channel list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:318 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:323 msgid "Hide muted channels" msgstr "隱藏已靜音的頻道" @@ -17358,7 +17363,7 @@ msgstr "個人身分" #. Generic presence-status label indicating the user is idle / AFK. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:639 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:644 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:46 msgid "Idle" msgstr "閒置中" @@ -17818,7 +17823,7 @@ msgstr "不當的個人檔案" #. Generic header / tab label for the unread / mentions / bookmarks inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:486 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:491 #: src/features/user/components/settings_utils/search_index/SharedDescriptors.ts:21 msgid "Inbox" msgstr "收件匣" @@ -17867,7 +17872,7 @@ msgstr "請提供社群 ID。" #. Generic label for an incoming voice or video call. #. Notification sound setting label. Ringtone for an incoming DM or group DM call. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:502 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:507 #: src/features/notification/utils/SoundLabels.ts:48 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:172 msgid "Incoming call" @@ -18406,7 +18411,7 @@ msgid "Invite page preview" msgstr "邀請頁面預覽" #. Action label that opens the community invite creation modal or sheet. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:357 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:362 msgid "Invite people" msgstr "邀請成員" @@ -18456,7 +18461,7 @@ msgstr "邀請人:" #. Generic section / tab label for the invites list. #: src/features/channel/components/modals/channel_tabs/ChannelInvitesTab.tsx:191 #: src/features/guild/components/modals/guild_tabs/GuildInvitesTab.tsx:53 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:684 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:689 msgid "Invites" msgstr "邀請" @@ -18645,7 +18650,7 @@ msgid "Join call" msgstr "加入通話" #. Generic action label that accepts a community invite / joins a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:675 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:680 msgid "Join community" msgstr "加入社群" @@ -18727,7 +18732,7 @@ msgid "Joined {productName}" msgstr "已加入 {productName}" #. Generic short action label that scrolls/navigates to a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:494 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:499 #: src/features/messaging/components/popouts/RecentMentionsContent.tsx:204 msgid "Jump" msgstr "跳轉" @@ -18991,7 +18996,7 @@ msgid "Kick a member from this community." msgstr "將成員從此社群踢出。" #. Moderation action label that removes a member from a community without banning. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:671 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:676 msgid "Kick member" msgstr "踢出成員" @@ -19169,7 +19174,7 @@ msgid "Leave call" msgstr "離開通話" #. Destructive action label that removes the current user from a community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:667 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:672 msgid "Leave community" msgstr "離開社群" @@ -19419,7 +19424,7 @@ msgid "Link builder" msgstr "連結產生器" #. Generic toast confirming that a link was copied to the system clipboard. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:385 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:390 msgid "Link copied to clipboard" msgstr "連結已複製到剪貼簿" @@ -19859,8 +19864,8 @@ msgstr "惡意軟體或危險連結" msgid "Malware, credential theft, or harmful files." msgstr "惡意軟體、竊取帳號密碼或有害檔案。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:574 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:609 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:561 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:596 msgid "Manage" msgstr "管理" @@ -19870,7 +19875,7 @@ msgid "Manage accounts" msgstr "管理帳號" #. Security settings section description for account access controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:93 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:92 msgid "Manage apps and devices with access to your account" msgstr "管理可存取您帳號的應用程式和裝置" @@ -20001,7 +20006,7 @@ msgid "Mark all unread inbox channels as read immediately, without asking to con msgstr "立即將所有未讀的收件匣頻道標示為已讀,不需確認" #. Action label that clears unread indicators for the selected channel, category, community, or DM. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:314 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:319 msgid "Mark as read" msgstr "標示為已讀" @@ -20021,7 +20026,7 @@ msgstr "標示為劇透" #. Generic action label that flips a channel back to unread. #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:663 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:668 #: src/features/input/state/input_keybind/shared.ts:33 msgid "Mark as unread" msgstr "標示為未讀" @@ -20169,7 +20174,7 @@ msgstr "成人社群" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:90 #: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:131 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:286 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:291 #: src/features/user/components/settings_utils/section_registry/PrivacySafetySections.ts:180 msgid "Mature content" msgstr "成人內容" @@ -20315,7 +20320,7 @@ msgstr "正在測量…" #. Collapsible group heading in the Theme Studio tokens list, for image and video tokens. #. Generic tab / section / category label for media content. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:254 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:259 #: src/features/theme_studio/sections/TokenGroups.ts:110 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:16 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:101 @@ -20513,7 +20518,7 @@ msgstr "成員" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/dialogs/shared/AddOverridePopout.tsx:190 #: src/features/channel/components/bottomsheets/ChannelDetailsBottomSheet.tsx:591 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:490 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:495 #: src/features/user/components/settings_utils/section_registry/AppearanceSections.ts:346 msgid "Members" msgstr "成員" @@ -20616,7 +20621,7 @@ msgstr "要提及此身分組嗎?" #. Generic section / tab label for the mentions inbox. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/guild/components/modals/GuildNotificationSettingsModal.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:643 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:648 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:166 msgid "Mentions" msgstr "提及" @@ -21342,7 +21347,7 @@ msgid "More media actions" msgstr "更多媒體操作" #. Generic overflow-menu trigger aria-label / tooltip ("…" or kebab menu). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:111 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:116 msgid "More options" msgstr "更多選項" @@ -21617,7 +21622,7 @@ msgid "Mute calls" msgstr "將通話靜音" #. Action label that mutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:575 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:580 msgid "Mute category" msgstr "將類別設為靜音" @@ -21632,7 +21637,7 @@ msgid "Mute communities" msgstr "將所有社群設為靜音" #. Generic action label that mutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:550 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:555 msgid "Mute community" msgstr "將社群設為靜音" @@ -21664,7 +21669,7 @@ msgid "Mute entrance sound" msgstr "將進場音效設為靜音" #. Action label that mutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:688 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:693 msgid "Mute favorites" msgstr "將最愛設為靜音" @@ -21943,12 +21948,12 @@ msgid "Name must be at least 2 characters" msgstr "名稱至少需要 2 個字元" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:27 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:19 msgid "Name passkey" msgstr "命名通行金鑰" #. Accessible form label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:15 msgid "Name passkey form" msgstr "命名通行金鑰表單" @@ -22023,7 +22028,7 @@ msgid "Nebraska" msgstr "內布拉斯加州" #. Short prompt shown near links that open account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:86 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:91 msgid "Need an account?" msgstr "還沒有帳號嗎?" @@ -22084,7 +22089,7 @@ msgid "Nevada" msgstr "內華達州" #. Generic short option label for "never" in time / frequency dropdowns. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:647 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:652 msgid "Never" msgstr "永不" @@ -22276,7 +22281,7 @@ msgstr "最新優先" #. Primary button in the required-action modal. Moves to the next carousel step. #: src/features/app/components/setup/SelfHostedSetupWizardGate.tsx:81 #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:154 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:716 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:721 msgid "Next" msgstr "下一步" @@ -22905,7 +22910,7 @@ msgstr "找不到使用者" msgid "No verification is required." msgstr "不需要驗證。" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:231 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 msgid "No verification methods available" msgstr "沒有可用的驗證方式" @@ -23038,11 +23043,13 @@ msgstr "找不到頁面" #. Button that cancels a subscription billing change. #. Secondary button on the voice-session-restore nagbar. Dismisses the reconnect prompt. +#. Secondary button that closes the passkey update modal after an attempt failed. #. Short label in the Plutonium self serve refund section. Keep the tone plain and specific. #. Short label in the authentication new device monitoring. Keep the tone plain and specific. #: src/features/app/components/dialogs/components/plutonium/SelfServeRefundSection.tsx:31 #: src/features/app/components/dialogs/components/plutonium/SubscriptionCard.tsx:69 #: src/features/app/components/layout/app_layout/nagbars/VoiceSessionRestoreNagbar.tsx:35 +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:43 #: src/features/auth/state/NewDeviceMonitoring.tsx:31 msgid "Not now" msgstr "暫時不要" @@ -23086,7 +23093,7 @@ msgid "Note (only visible to you)" msgstr "備註(僅自己可見)" #. Notification level option. Suppresses all pushes for the channel or community. Paired with "All messages" and "Only mentions". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 msgid "Nothing" msgstr "不通知" @@ -23129,7 +23136,7 @@ msgid "Notification overrides" msgstr "通知設定覆寫" #. Submenu / section header that groups per-channel or per-community notification preferences. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:330 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:335 msgid "Notification settings" msgstr "通知設定" @@ -23152,7 +23159,7 @@ msgstr "通知音量" #. Generic section header / tab label for the notifications area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/components/layout/MobileBottomNav.tsx:136 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:700 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:705 #: src/features/notification/components/pages/NotificationsPage.tsx:61 #: src/features/user/components/modals/tabs/advanced_settings_tab/AdvancedSettingsCategories.ts:18 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:30 @@ -23248,7 +23255,7 @@ msgid "Off" msgstr "關閉" #. Generic presence-status label indicating the user is offline. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:635 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:640 msgid "Offline" msgstr "離線" @@ -23263,7 +23270,7 @@ msgid "OK" msgstr "確定" #. Generic acknowledgement button on an informational alert. Closes the alert. Use for benign confirms; for "I have read and understood" use UNDERSTOOD_DESCRIPTOR. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:102 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:107 msgid "Okay" msgstr "確定" @@ -23348,7 +23355,7 @@ msgid "online" msgstr "線上" #. Generic presence-status label indicating the user is connected and available. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:202 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:207 msgid "Online" msgstr "線上" @@ -23404,7 +23411,7 @@ msgid "Only members with the \"{manageCommunityPermissionLabel}\" permission can msgstr "只有擁有「{manageCommunityPermissionLabel}」權限的成員才能變更此設定。" #. Notification level option. Sends a push only when the user is mentioned. Paired with "All messages" and "Nothing". -#: src/features/i18n/utils/CommonMessageDescriptors.ts:343 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:348 msgid "Only mentions" msgstr "僅提及" @@ -23514,7 +23521,7 @@ msgid "Open {labelText} in settings" msgstr "在設定中開啟 {labelText}" #. Generic action label that opens a named app area, settings menu, or settings sheet. {landmarkName} is a shared localized label for that destination. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:143 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:148 msgid "Open {landmarkName}" msgstr "開啟{landmarkName}" @@ -23683,7 +23690,7 @@ msgid "Open direct messages" msgstr "已開啟的私訊" #. Action label that opens or switches to a direct-message channel with the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:176 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:181 msgid "Open DM" msgstr "開啟私訊" @@ -23795,7 +23802,7 @@ msgid "Open invoice {invoiceLabel}" msgstr "開啟發票 {invoiceLabel}" #. Generic action or tooltip label for opening an external or attached link. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:278 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:283 msgid "Open link" msgstr "開啟連結" @@ -23850,7 +23857,7 @@ msgstr "開啟快速切換" #. Button label that opens macOS System Settings for a denied permission. #. Generic action label that opens the global app settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:115 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:120 #: src/features/permissions/system/components/modals/MacPermissionsModal.tsx:76 msgid "Open settings" msgstr "開啟設定" @@ -23935,11 +23942,6 @@ msgstr "開啟主題工作室彈出視窗" msgid "Open theme studio…" msgstr "開啟主題工作室…" -#. Error in the passkey pop-up window when someone opens its address directly. productName is the app name. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:35 -msgid "Open this window from {productName} to use your passkey." -msgstr "從 {productName} 開啟此視窗以使用您的通行金鑰。" - #. Short label in the app layout user area. Preserve {displayName}; it is inserted by code. #: src/features/app/components/layout/UserArea.tsx:71 msgid "Open user menu for {displayName}" @@ -24055,7 +24057,7 @@ msgid "Options" msgstr "選項" #. Small separator between alternative shortcut keycaps in the keyboard mode intro modal. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:16 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:15 #: src/features/connection/components/modals/AddConnectionModal.tsx:318 #: src/features/input/components/modals/KeyboardModeIntroModal.tsx:30 msgid "or" @@ -24337,27 +24339,32 @@ msgid "Passkey" msgstr "通行金鑰" #. Short label in the authentication passkey name modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/PasskeyNameModal.tsx:31 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:23 msgid "Passkey name" msgstr "通行金鑰名稱" +#. Toast shown after the user saved an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:51 +msgid "Passkey updated" +msgstr "已更新通行金鑰" + #. Settings search entry label. Also used as a search synonym in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:409 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:90 #: src/features/user/components/settings_utils/section_registry/AccountSecuritySections.ts:88 msgid "Passkeys" msgstr "通行金鑰" #. Sudo (re-auth) modal body shown on unsigned macOS desktop bundles where passkeys cannot work. Direct the user to install the signed client. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:30 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:42 msgid "Passkeys require a signed macOS bundle with a valid application identifier. Install the signed desktop client and retry." msgstr "通行金鑰需要具備有效應用程式識別碼的已簽署 macOS 套件。請安裝已簽署的桌面版用戶端,然後再試一次。" #. Generic form-field label for a password. #. Label for SMTP password input. #: src/features/app/components/setup/SetupWizardSteps.tsx:997 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:210 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:215 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:146 #: src/features/user/components/modals/tabs/account_security_tab/AccountTab.tsx:183 msgid "Password" @@ -24367,11 +24374,6 @@ msgstr "密碼" msgid "Password changed" msgstr "密碼已變更" -#. Shown after a passkey prompt fails, above the button that retries the passkey prompt in a pop-up window on the old web address. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:16 -msgid "Password managers may not offer your passkey on this web address. Try it in a pop-up window on the old address instead." -msgstr "密碼管理工具可能無法在此網址提供您的通行金鑰。請改在舊網址的彈出式視窗中嘗試。" - #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:102 @@ -24464,7 +24466,7 @@ msgstr "請貼上訊息連結。" #. Button label in the trimmer modal that pauses preview playback. #. Generic media-player control: pause playback. #. Pause-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:369 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:374 #: src/features/voice/components/EntranceSoundTrimmerModal.tsx:45 #: src/features/voice/components/VoiceMessageComposerModal.tsx:89 msgid "Pause" @@ -24712,7 +24714,7 @@ msgid "Personal dictionary" msgstr "個人字典" #. Label for the user-only private channel where they can jot notes to themselves. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:418 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:423 msgid "Personal notes" msgstr "個人筆記" @@ -24885,7 +24887,7 @@ msgstr "釘選群組私訊" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Title of the confirmation alert shown when pinning a message. #: src/features/channel/components/MessageActionUtils.tsx:55 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:534 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:539 #: src/features/input/state/input_keybind/shared.ts:13 msgid "Pin message" msgstr "釘選訊息" @@ -24945,7 +24947,7 @@ msgid "pinned" msgstr "已釘選" #. Generic short toast / status label confirming a DM was pinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:651 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:656 msgid "Pinned DM" msgstr "已釘選私訊" @@ -25020,7 +25022,7 @@ msgstr "平台管理員" #. Generic media-player control: start playback. #. Play-preview button label in the voice message composer modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:365 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:370 #: src/features/voice/components/VoiceMessageComposerModal.tsx:85 msgid "Play" msgstr "播放" @@ -25318,6 +25320,11 @@ msgstr "按下按鍵、滑鼠按鍵或遊戲手把按鈕即可綁定。按 Esc msgid "Press a shortcut…" msgstr "按下快速鍵…" +#. Body of the page that asks the user to confirm with their passkey. Continue is the button label. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:32 +msgid "Press Continue to use your passkey." +msgstr "按下「繼續」以使用您的通行金鑰。" + #. Label in the channel and chat message reactions. #: src/features/channel/components/MessageReactions.tsx:46 msgid "press to add reaction" @@ -25497,7 +25504,7 @@ msgid "Primary language" msgstr "主要語言" #. ARIA landmark label for the main app navigation area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:139 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:144 msgid "Primary navigation" msgstr "主要導覽" @@ -25536,7 +25543,7 @@ msgid "Privacy policy" msgstr "隱私權政策" #. Generic section heading / button label for the privacy settings area. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:659 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:664 msgid "Privacy settings" msgstr "隱私設定" @@ -25581,7 +25588,7 @@ msgid "Pro tip:" msgstr "小提示:" #. Generic action label that confirms proceeding past a content warning or mature-content gate. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:294 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:299 msgid "Proceed" msgstr "繼續" @@ -26090,7 +26097,7 @@ msgstr "新增「{emojiShortcode}」反應" #. Generic short section / tab / aria label for emoji reactions. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:655 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:660 #: src/features/messaging/components/modals/MessageReactionsModal.tsx:144 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:13 msgid "Reactions" @@ -26456,11 +26463,11 @@ msgid "Regenerating will invalidate the current token. Update any code that uses msgstr "重新產生會讓目前的權杖失效。請更新所有使用舊值的程式碼。" #. Generic authentication action label for opening or submitting account registration. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:78 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:83 msgid "Register" msgstr "註冊" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:435 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:422 msgid "Registered passkeys" msgstr "已註冊的通行金鑰" @@ -26676,7 +26683,7 @@ msgid "Remove banner" msgstr "移除橫幅" #. Action label that removes a saved bookmark. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:478 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:483 msgid "Remove bookmark" msgstr "移除書籤" @@ -26706,7 +26713,7 @@ msgid "Remove from dictionary" msgstr "從字典中移除" #. Action label that unpins the current channel, DM, or attachment from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:326 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:331 msgid "Remove from favorites" msgstr "從我的最愛移除" @@ -26856,7 +26863,7 @@ msgid "Removed from favorite GIFs" msgstr "已從我的最愛 GIF 移除" #. Toast confirming an item was removed from the favorites list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:611 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:616 msgid "Removed from favorites" msgstr "已從我的最愛移除" @@ -27032,7 +27039,7 @@ msgstr "移除權限可能會限制機器人功能。" msgid "Removing the timeout will allow <0>{targetUserTag} to send messages, react, and join voice channels again." msgstr "解除禁言後,<0>{targetUserTag} 將能再次傳送訊息、新增反應和加入語音頻道。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:522 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:509 msgid "Rename" msgstr "重新命名" @@ -27119,7 +27126,7 @@ msgstr "回覆" #. Generic action label that opens the reply composer for a message. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:607 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:612 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:71 msgid "Reply" msgstr "回覆" @@ -27209,7 +27216,7 @@ msgstr "回報問題" #. Generic action label that opens the report flow targeting a specific message. #. Modal title for the IAR flow when reporting a specific message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:530 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:535 #: src/features/moderation/components/report_modal/IARModalContext.ts:22 msgid "Report message" msgstr "檢舉訊息" @@ -27273,7 +27280,7 @@ msgid "Require 2FA for moderation actions" msgstr "管理動作需要雙重驗證" #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:461 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:448 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:138 msgid "Require a passkey as your second factor" msgstr "要求以通行金鑰作為第二道驗證" @@ -27521,7 +27528,7 @@ msgid "Reset link invalid or expired" msgstr "重設連結無效或已過期" #. Developer tool action that forgets a local mature-content gate acknowledgement. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:298 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:303 msgid "Reset mature content agreement state" msgstr "重設成人內容同意狀態" @@ -27880,7 +27887,7 @@ msgstr "以圖搜圖" #. Generic action label that runs a reverse-image search on the selected media. #. Settings search entry label. Also used as a search synonym in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:603 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:608 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:267 msgid "Reverse image search" msgstr "以圖搜圖" @@ -27926,7 +27933,7 @@ msgid "Review and confirm" msgstr "檢視並確認" #. Security settings row description for authorized apps. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:101 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:100 msgid "Review apps that can access your account." msgstr "檢視可以存取您帳號的應用程式。" @@ -27941,7 +27948,7 @@ msgid "Review past purchases and refund options" msgstr "檢視過往購買項目與退款選項" #. Security settings row description for linked devices. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:109 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:108 msgid "Review signed-in devices and sign out of sessions you don't recognize." msgstr "檢視已登入的裝置,並登出您不認識的工作階段。" @@ -28152,7 +28159,7 @@ msgid "Role updated" msgstr "身分組已更新" #. Generic section, column, or submenu label for community roles. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:422 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:427 msgid "Roles" msgstr "身分組" @@ -28261,7 +28268,7 @@ msgstr "飽和度" #. Button or menu action label in the rename channel modal. Keep it concise. #. Save button in the community-folder settings modal footer. #: src/features/app/components/dialogs/shared/MobileSettingsComponents.tsx:113 -#: src/features/auth/components/modals/PasskeyNameModal.tsx:146 +#: src/features/auth/components/modals/PasskeyNameModal.tsx:87 #: src/features/channel/components/modals/EditGroupBottomSheet.tsx:366 #: src/features/channel/components/modals/EditGroupModal.tsx:322 #: src/features/channel/components/modals/RenameChannelModal.tsx:28 @@ -28410,13 +28417,13 @@ msgid "Scope" msgstr "範圍" #. Generic OAuth label for requested authorization scopes. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:426 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:431 msgid "Scopes" msgstr "權限" #. Section heading for screen-reader related accessibility settings. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:599 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:604 #: src/features/user/components/settings_utils/section_registry/AccessibilitySections.ts:51 msgid "Screen reader" msgstr "螢幕閱讀器" @@ -28767,7 +28774,7 @@ msgid "Search for channels, people, or communities" msgstr "搜尋頻道、使用者或社群" #. Generic search-input placeholder for filtering the current friends list. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:194 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:199 msgid "Search friends" msgstr "搜尋好友" @@ -28878,12 +28885,12 @@ msgid "Search selected text" msgstr "搜尋選取的文字" #. Accessible label for settings search fields. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:131 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:136 msgid "Search settings" msgstr "搜尋設定" #. Placeholder text in settings search fields. The ellipsis indicates the user can type a query. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:127 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:132 msgid "Search settings…" msgstr "搜尋設定…" @@ -29047,7 +29054,7 @@ msgctxt "security-settings-section" msgid "Security" msgstr "安全性" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:288 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:275 msgid "Security features" msgstr "安全性功能" @@ -29059,7 +29066,7 @@ msgid "Security key" msgstr "安全金鑰" #. MFA action button for authenticating with a hardware security key or passkey. -#: src/features/auth/flow/MfaScreen.tsx:27 +#: src/features/auth/flow/MfaScreen.tsx:26 msgid "Security key / passkey" msgstr "安全金鑰/通行金鑰" @@ -29589,7 +29596,7 @@ msgid "Sensitive media" msgstr "敏感媒體" #. Generic short status label confirming an item (invite, gift, theme link) was sent. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:804 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:809 msgid "Sent" msgstr "已傳送" @@ -29635,7 +29642,7 @@ msgid "Session" msgstr "工作階段" #. Login layout banner shown when the session for a specific account has expired. Account identifier is interpolated. -#: src/features/auth/flow/AuthLoginLayout.tsx:53 +#: src/features/auth/flow/AuthLoginLayout.tsx:58 msgid "Session expired for {identifier}. Sign in again." msgstr "「{identifier}」的工作階段已過期。請重新登入。" @@ -29880,7 +29887,7 @@ msgid "Sets the level for every sound effect. Per-sound overrides ignore this." msgstr "設定所有音效的音量。個別音效的設定會忽略此項。" #. Generic action label / section header that opens settings. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:262 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:267 #: src/features/user/components/modals/tabs/component_gallery_tab/ComponentGalleryTabButtonsTab.tsx:282 #: src/features/user/components/modals/tabs/component_gallery_tab/index.tsx:125 msgid "Settings" @@ -29897,7 +29904,7 @@ msgid "Settings opened." msgstr "已開啟設定。" #. ARIA label for the section navigation inside a settings modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:135 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:140 msgid "Settings sections" msgstr "設定區塊" @@ -30627,7 +30634,7 @@ msgid "Sidebar" msgstr "側邊欄" #. Generic authentication action label. Use for buttons, links, page titles, and accessible labels. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:74 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:79 msgid "Sign in" msgstr "登入" @@ -30640,12 +30647,12 @@ msgid "Sign in to claim your gift" msgstr "登入以領取您的禮物" #. Passkey sign-in action that opens the browser flow from the desktop app. -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:69 -#: src/features/auth/flow/AuthLoginLayout.tsx:79 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:64 +#: src/features/auth/flow/AuthLoginLayout.tsx:84 msgid "Sign in via browser" msgstr "透過瀏覽器登入" -#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:68 +#: src/features/auth/flow/auth_login_core/AuthLoginPasskeyActions.tsx:63 msgid "Sign in with a passkey" msgstr "使用通行金鑰登入" @@ -30666,7 +30673,7 @@ msgstr "使用您機構的單一登入服務供應商登入。" #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:195 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:256 #: src/features/auth/utils/AccountSwitcherModalUtils.tsx:313 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:595 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:600 #: src/features/user/components/settings_utils/search_index/DevicesIndex.ts:47 msgid "Sign out" msgstr "登出" @@ -30720,7 +30727,7 @@ msgid "Sign-in details" msgstr "登入詳細資訊" #. Accessible label for the stepped sign-in panel. -#: src/features/auth/flow/AuthLoginLayout.tsx:62 +#: src/features/auth/flow/AuthLoginLayout.tsx:67 msgid "Sign-in flow" msgstr "登入流程" @@ -31189,7 +31196,7 @@ msgstr "部分使用者無法新增" #. Generic error toast title. #: src/features/auth/flow/HandoffApprovalFlow.tsx:248 #: src/features/auth/flow/HandoffCodeDisplay.tsx:90 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:274 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:279 #: src/lib/forms/index.tsx:18 msgid "Something went wrong" msgstr "發生錯誤" @@ -31374,7 +31381,7 @@ msgstr "音量" #. Section heading / tab label for the notification-sounds area. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:808 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:813 #: src/features/user/components/settings_utils/section_registry/NotificationsSections.ts:135 msgid "Sounds" msgstr "音效" @@ -31788,12 +31795,12 @@ msgid "Start uploading attachments as soon as they are added to the message inpu msgstr "訊息輸入欄位中新增附件時,立即開始上傳" #. Action label that initiates a video call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:591 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:596 msgid "Start video call" msgstr "發起視訊通話" #. Action label that initiates a voice call (DM or group DM). -#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:195 msgid "Start voice call" msgstr "發起語音通話" @@ -31899,7 +31906,7 @@ msgstr "貼圖" #. Label for the has:sticker option in the mobile content-type filter sheet. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #: src/features/app/config/AuditLogConstants.ts:171 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:234 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:239 #: src/features/search/components/search/HasFilterSheet.tsx:73 #: src/features/user/components/settings_utils/section_registry/ChatSettingsSections.ts:133 msgid "Sticker" @@ -31974,7 +31981,7 @@ msgid "Sticker: {stickerName}" msgstr "貼圖:{stickerName}" #. Generic tab / section / category label for stickers. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:238 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:243 msgid "Stickers" msgstr "貼圖" @@ -32090,7 +32097,7 @@ msgid "Stop trusting all links?" msgstr "要停止信任所有連結嗎?" #. Security settings: confirmation modal title for turning off passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:65 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:64 msgid "Stop using passkeys for two-factor authentication?" msgstr "要停止使用通行金鑰進行雙重驗證嗎?" @@ -32379,7 +32386,7 @@ msgid "Suppress all role mentions" msgstr "隱藏所有身分組提及" #. Action label on a message that hides link previews / embeds. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:587 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:592 msgid "Suppress embeds" msgstr "隱藏嵌入內容" @@ -33005,7 +33012,7 @@ msgid "text channel" msgstr "文字頻道" #. Generic label for a text channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:230 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:235 msgid "Text channel" msgstr "文字頻道" @@ -33055,7 +33062,7 @@ msgstr "用您的手機傳送簡訊給我們" #. Feature label / section heading for the text-to-speech feature. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:414 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:419 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:138 msgid "Text-to-speech" msgstr "文字轉語音" @@ -33119,6 +33126,11 @@ msgstr "這次沒有完成。您可能已經退出部分社群,且您的帳號 msgid "That did not go through. Nothing changed. Try again." msgstr "無法完成。沒有任何變更。請再試一次。" +#. Body of the passkey page after the passkey prompt failed or was dismissed. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:36 +msgid "That didn't work. Try again or cancel." +msgstr "操作未成功。請再試一次或取消。" + #: src/features/ui/components/form/ColorPickerField.tsx:301 msgid "That doesn't look like a valid color. Try hex, rgb(), hsl(), or a CSS color name." msgstr "這看起來不是有效的顏色。請試試看十六進位、rgb()、hsl() 或 CSS 顏色名稱。" @@ -33143,7 +33155,7 @@ msgid "That image could not be used. Try a different file." msgstr "該圖片無法使用。請嘗試其他檔案。" #. Generic image upload error shown when the selected file cannot be decoded or accepted. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:282 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:287 msgid "That image is invalid. Try another one." msgstr "這張圖片無效。請換一張試試。" @@ -34035,11 +34047,11 @@ msgstr "這是第二個選項的說明" msgid "This is the third option description" msgstr "這是第三個選項的說明" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:261 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:248 msgid "This is your last passkey and passkeys are your second factor. Deleting it turns off two-factor authentication for your account, and your current backup codes will stop working." msgstr "這是您最後一個通行金鑰,而通行金鑰是您的第二道驗證。刪除後,您帳號的雙重驗證將會關閉,目前的備用碼也會失效。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:256 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:243 msgid "This is your last passkey. Once it's gone you won't be able to use a passkey as your second factor." msgstr "這是您最後一個通行金鑰。刪除後,您將無法再以通行金鑰作為第二道驗證。" @@ -34154,16 +34166,6 @@ msgstr "此參與者已耳機靜音" msgid "This participant was deafened by moderators" msgstr "此參與者遭管理員設為耳機靜音" -#. Error in the passkey pop-up window when the request it received is not valid. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:39 -msgid "This passkey request could not be verified. Close this window and try again." -msgstr "此通行金鑰要求無法驗證。請關閉此視窗,然後再試一次。" - -#. Error in the passkey pop-up window after five minutes without finishing. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:43 -msgid "This passkey request timed out. Close this window and try again." -msgstr "此通行金鑰要求已逾時。請關閉此視窗,然後再試一次。" - #. Required-action form error when the backend rejects a phone number. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:530 msgid "This phone number cannot be used. Try another mobile number or contact support." @@ -34221,6 +34223,11 @@ msgstr "這會移除所有信任的網域。您將會再次看到所有網域的 msgid "This removes every custom shortcut and re-enables all built-in shortcuts. This cannot be undone." msgstr "這會移除所有自訂快速鍵,並重新啟用所有內建快速鍵。此動作無法復原。" +#. Body of the passkey page when the passkey request is no longer valid. Keep plain. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:40 +msgid "This request has expired. Go back and try again." +msgstr "此要求已過期。請返回並再試一次。" + #: src/features/auth/components/pages/ResetPasswordPage.tsx:132 msgid "This reset link has expired. Reset links last 1 hour. Please request a new one." msgstr "此重設連結已過期。重設連結有效時間為 1 小時。請重新申請一個。" @@ -34807,7 +34814,7 @@ msgstr "要將群組擁有權轉移給 {userName} 嗎?" #. Action label in community settings that hands ownership of the community to another member. #: src/features/guild/components/modals/TransferOwnershipModal.tsx:99 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:361 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:366 msgid "Transfer ownership" msgstr "轉移擁有權" @@ -34823,7 +34830,7 @@ msgstr "已將擁有權轉移給 {0}" #. Generic action label that translates a message body. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:583 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:588 #: src/features/user/components/settings_utils/search_index/ChatSettingsIndex.ts:255 msgid "Translate" msgstr "翻譯" @@ -34980,7 +34987,7 @@ msgstr "請嘗試不同的變數名稱或清除搜尋。" #. Generic action label for retrying a failed or interrupted operation. #: src/features/auth/flow/AuthRouteLoadError.tsx:22 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:70 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:75 msgid "Try again" msgstr "再試一次" @@ -34991,7 +34998,7 @@ msgid "Try again" msgstr "再試一次" #. Generic short retry body used in error modals and toasts. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:270 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:275 msgid "Try again in a moment." msgstr "請稍後再試一次。" @@ -35047,7 +35054,7 @@ msgid "Try searching for something like \"theme\", \"notifications\", or \"priva msgstr "試試看搜尋「主題」、「通知」或「隱私」等關鍵字" #. Secondary MFA action that switches from code entry to passkey or security-key authentication. -#: src/features/auth/flow/MfaScreen.tsx:35 +#: src/features/auth/flow/MfaScreen.tsx:34 msgid "Try security key / passkey instead" msgstr "改用安全金鑰或通行金鑰" @@ -35088,7 +35095,7 @@ msgstr "土耳其文" #. Button label that turns off streaming privacy. #. Security settings: confirm button for turning off passkey-based two-factor authentication. #: src/features/app/components/layout/app_layout/nagbars/StreamerModeNagbar.tsx:16 -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:81 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:80 msgid "Turn off" msgstr "關閉" @@ -35109,7 +35116,7 @@ msgid "Turn off audio sharing for this source or try again in a moment." msgstr "關閉此來源的音訊分享,或稍後再試。" #. Voice / call action label that disables the local camera. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:506 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:511 msgid "Turn off camera" msgstr "關閉相機" @@ -35145,7 +35152,7 @@ msgid "Turn off streaming privacy before viewing login or account security detai msgstr "請先關閉直播隱私設定,才能查看登入或帳號安全詳細資訊。" #. Security settings: confirm button for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:61 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:60 msgid "Turn on" msgstr "開啟" @@ -35274,7 +35281,7 @@ msgid "Two-factor" msgstr "雙重驗證" #. Generic security setting label for two-factor authentication. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:434 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:439 msgid "Two-factor authentication" msgstr "雙重驗證" @@ -35288,7 +35295,7 @@ msgstr "雙重驗證已停用" msgid "Two-factor authentication enabled" msgstr "雙重驗證已啟用" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:328 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:315 msgid "Two-factor authentication is enabled" msgstr "雙重驗證已啟用" @@ -35488,7 +35495,7 @@ msgid "Unblock user" msgstr "解除封鎖" #. Generic label for items that do not belong to a category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:631 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:636 msgid "Uncategorized" msgstr "未分類" @@ -35561,7 +35568,7 @@ msgid "Underline website links" msgstr "為網站連結加上底線" #. Acknowledgement button on an informational modal. Closes the modal after the user has read the message. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:302 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:307 msgid "Understood" msgstr "知道了" @@ -35643,7 +35650,7 @@ msgstr "通用備用方案。畫質最低,但隨處可用。" #. Generic fallback label when a more specific value is unavailable. #. Short label in the invite list item. Keep it concise. #: src/features/emoji/components/emojis/EmojiListItem.tsx:584 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:756 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:761 #: src/features/invite/components/InviteListItem.tsx:36 #: src/features/moderation/components/modals/BanDetailsModal.tsx:114 #: src/features/updater/commands/UpdaterModalCommands.tsx:144 @@ -35869,7 +35876,7 @@ msgid "Unmute all devices" msgstr "解除所有裝置靜音" #. Action label that unmutes notifications for a channel category. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:579 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:584 msgid "Unmute category" msgstr "解除類別靜音" @@ -35884,7 +35891,7 @@ msgid "Unmute communities" msgstr "解除所有社群靜音" #. Generic action label that unmutes notifications for an entire community. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:554 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:559 msgid "Unmute community" msgstr "解除社群靜音" @@ -35904,7 +35911,7 @@ msgid "Unmute DMs" msgstr "解除所有私訊靜音" #. Action label that unmutes notifications for the favourites pseudo-guild. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:692 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:697 msgid "Unmute favorites" msgstr "解除最愛靜音" @@ -35977,7 +35984,7 @@ msgid "Unpin it" msgstr "取消釘選" #. Action label for removing a pinned message from the channel pins. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:462 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:467 msgid "Unpin message" msgstr "取消釘選訊息" @@ -35987,7 +35994,7 @@ msgid "Unpin this message?" msgstr "要取消釘選這則訊息嗎?" #. Generic short toast / status label confirming a DM was unpinned. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:627 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:632 msgid "Unpinned DM" msgstr "已取消釘選私訊" @@ -36193,6 +36200,11 @@ msgstr "更新電子郵件" msgid "Update my status" msgstr "更新我的狀態" +#. Primary button in the modal that saves an updated passkey. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:39 +msgid "Update passkey" +msgstr "更新通行金鑰" + #. Short label in the settings dialog mobile settings view. #: src/features/app/components/dialogs/components/MobileSettingsView.tsx:56 msgid "Update service worker" @@ -36208,6 +36220,11 @@ msgstr "更新禁言時間" msgid "Update your own nickname." msgstr "更新您的暱稱。" +#. Title of the modal that asks the user to save an updated passkey after signing in with an older one. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:24 +msgid "Update your passkey" +msgstr "更新您的通行金鑰" + #. Short label in the password change modal. Keep it concise. Keep the tone plain and specific. #: src/features/user/components/modals/PasswordChangeModal.tsx:38 msgid "Update your password" @@ -36517,11 +36534,6 @@ msgstr "使用專屬的彈出視窗,為沒有「{readMessageHistoryPermissionL msgid "Use a different email address and verify it with a code." msgstr "使用其他電子郵件地址,並透過驗證碼進行驗證。" -#. Button that runs the passkey prompt in a small pop-up window on the old web address, so password manager extensions can find passkeys saved there. -#: src/features/auth/components/PasswordManagerPasskeyAction.tsx:11 -msgid "Use a password manager passkey" -msgstr "使用密碼管理工具中的通行金鑰" - #. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse. #: src/features/channel/components/channel_header_components/developer_tools/NagbarControls.ts:9 msgid "Use actual" @@ -36542,7 +36554,7 @@ msgstr "使用實際值" msgid "Use alternative method" msgstr "使用其他方式" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:330 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:317 msgid "Use an authenticator app to generate codes for two-factor authentication" msgstr "使用驗證器應用程式產生雙重驗證碼" @@ -36714,12 +36726,12 @@ msgid "Use only if it clearly breaks {productName}'s rules and doesn't fit above msgstr "僅在內容明確違反 {productName} 規則且不符合上述任何選項時使用。" #. Security settings: confirmation modal title for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:52 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:51 msgid "Use passkeys for two-factor authentication?" msgstr "要使用通行金鑰進行雙重驗證嗎?" #. Settings search entry description. One-line summary of what the settings search entry controls. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:423 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:410 #: src/features/user/components/settings_utils/search_index/AccountSecurityIndex.ts:134 msgid "Use passkeys to sign in without a password" msgstr "使用通行金鑰登入,無需密碼" @@ -36824,10 +36836,10 @@ msgstr "使用語音活動" msgid "Use your operating system's spellchecker when available. Otherwise, use {productName}'s in-app dictionaries." msgstr "使用您作業系統的拼字檢查工具(如果可用)。否則,請使用 {productName} 的應用程式內字典。" -#. Heading of the small pop-up window that runs a passkey prompt for the new web address. -#: src/features/auth/passkey_bridge/PasskeyBridgeScreen.tsx:18 +#. Heading of the page that asks the user to confirm with their passkey. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:28 msgid "Use your passkey" -msgstr "使用您的通行金鑰" +msgstr "使用你的通行金鑰" #. Description text in the entrance sound section. #: src/features/user/components/modals/tabs/components/EntranceSoundSection.tsx:66 @@ -36894,7 +36906,7 @@ msgid "User controls" msgstr "使用者控制項" #. Title of the developer-mode user debug modal. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:571 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:576 msgid "User debug" msgstr "使用者偵錯" @@ -36972,7 +36984,7 @@ msgstr "使用者音量" #. Label for SMTP username input. #. Settings search entry label. Also used as a search synonym in the settings search bar. #: src/features/app/components/setup/SetupWizardSteps.tsx:996 -#: src/features/i18n/utils/CommonMessageDescriptors.ts:567 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:572 #: src/features/user/components/modals/FluxerTagChangeModal.tsx:218 #: src/features/user/components/modals/tabs/my_profile_tab/MyProfileTabUsernameSection.tsx:56 #: src/features/user/components/settings_utils/search_index/MyProfileIndex.ts:53 @@ -37158,7 +37170,7 @@ msgid "Verification canceled" msgstr "驗證已取消" #. Generic form-field label for a one-time verification code. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:214 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:219 msgid "Verification code" msgstr "驗證碼" @@ -37185,7 +37197,7 @@ msgstr "驗證電子郵件已寄出。請檢查您的收件匣。" msgid "Verification expired" msgstr "驗證已過期" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:74 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:82 #: src/features/auth/components/pages/VerifyEmailPage.tsx:108 #: src/features/premium/components/pages/PremiumCallbackPage.tsx:241 msgid "Verification failed" @@ -37202,7 +37214,7 @@ msgid "Verified community" msgstr "已驗證社群" #. Generic primary action label that confirms a code, identity check, or account verification step. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:160 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:165 msgid "Verify" msgstr "驗證" @@ -37221,17 +37233,17 @@ msgid "Verify connection" msgstr "驗證連線" #. Shared action or page-title label for starting or completing email address verification. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:164 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:169 msgid "Verify email" msgstr "驗證電子郵件" #. Accessible form label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:53 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:61 msgid "Verify identity form" msgstr "驗證身分表單" #. Short label in the authentication sudo verification modal. Keep the tone plain and specific. -#: src/features/auth/components/modals/SudoVerificationModal.tsx:57 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:65 msgid "Verify it's you" msgstr "驗證是您本人操作" @@ -37274,12 +37286,12 @@ msgid "Verify your email address to send friend requests." msgstr "請驗證您的電子郵件地址,才能傳送好友邀請。" #. Security settings warning shown when an unverified account cannot register a new passkey. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:48 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:47 msgid "Verify your email before adding a passkey." msgstr "請先驗證您的電子郵件,再新增通行金鑰。" #. Security settings warning shown when an unverified account cannot enable authenticator-app two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:43 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:42 msgid "Verify your email before adding an authenticator app." msgstr "請先驗證您的電子郵件,然後再新增驗證器應用程式。" @@ -37571,7 +37583,7 @@ msgstr "檢視並管理已停權的使用者。" msgid "View and manage every webhook configured across your community." msgstr "檢視並管理社群中設定的所有 Webhook。" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:397 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:384 msgid "View and manage your backup codes for account recovery" msgstr "檢視並管理用於帳號復原的備用碼" @@ -37605,7 +37617,7 @@ msgstr "檢視頻道" msgid "View channel members" msgstr "檢視頻道成員" -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:415 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:402 msgid "View codes" msgstr "檢視備用碼" @@ -37690,7 +37702,7 @@ msgid "View plans" msgstr "查看方案" #. Action label that opens the user profile modal or sheet for the selected user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:353 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:358 msgid "View profile" msgstr "查看個人檔案" @@ -37932,7 +37944,7 @@ msgid "voice channel" msgstr "語音頻道" #. Generic label for a voice channel type. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:226 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:231 msgid "Voice channel" msgstr "語音頻道" @@ -38073,7 +38085,7 @@ msgstr "已作廢" #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. #. Subsection title in the voice tab. Keep it concise. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:373 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:378 #: src/features/user/components/modals/tabs/UserVoiceTab.tsx:181 #: src/features/user/components/settings_utils/search_index/NotificationsIndex.ts:86 #: src/features/user/components/settings_utils/section_registry/SharedDescriptors.ts:174 @@ -38131,7 +38143,7 @@ msgstr "請在此等候" msgid "Waiting for connection..." msgstr "正在等待連線…" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:274 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:349 msgid "Waiting for passkey…" msgstr "正在等候通行金鑰…" @@ -38178,7 +38190,7 @@ msgid "Watch" msgstr "觀看" #. Voice action label that starts watching a remote screen share. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:482 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:487 msgid "Watch stream" msgstr "觀看直播" @@ -38540,7 +38552,7 @@ msgid "Website previews" msgstr "網站預覽" #. Heading on the standard sign-in form. -#: src/features/auth/flow/AuthLoginLayout.tsx:66 +#: src/features/auth/flow/AuthLoginLayout.tsx:71 msgid "Welcome back" msgstr "歡迎回來" @@ -39066,7 +39078,7 @@ msgid "You aren't in any communities right now." msgstr "您目前沒有加入任何社群。" #. Warning shown before opening or composing a DM with a user the current user has blocked. {userName} is the blocked user. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:180 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 msgid "You blocked {userName}. You won't be able to send messages unless you unblock them." msgstr "您已封鎖 {userName}。除非您解除封鎖,否則無法傳送訊息給對方。" @@ -39101,6 +39113,11 @@ msgstr "您可以在 14 天內取消刪除程序" msgid "You can close this modal. The import will continue in the background." msgstr "您可以關閉此視窗。匯入作業將在背景繼續進行。" +#. Heading of the page shown after a passkey confirmation finished in a separate tab. +#: src/features/auth/passkey_migration/PasskeyBridgePage.tsx:48 +msgid "You can close this tab" +msgstr "您可以關閉此分頁" + #: src/features/premium/components/pages/PremiumCallbackPage.tsx:169 msgid "You can now close this tab and return to the app." msgstr "您現在可以關閉此分頁並返回應用程式。" @@ -39244,7 +39261,7 @@ msgid "You can't send a friend request to yourself." msgstr "您無法傳送好友邀請給自己。" #. Permission-denied message shown when the current user cannot send messages in the current channel. Keep the tone calm and factual. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:185 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:190 msgid "You can't send messages in this channel." msgstr "您無法在此頻道中傳送訊息。" @@ -39607,7 +39624,7 @@ msgid "You will still need to finish the email step." msgstr "您還是需要完成電子郵件驗證步驟。" #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when the account also has an authenticator app. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:75 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:74 msgid "You won't be asked for a passkey after your password anymore. Your authenticator app stays as your second factor." msgstr "輸入密碼後,系統將不再要求您提供通行金鑰。您的驗證器應用程式仍會是您的第二道驗證。" @@ -39626,7 +39643,7 @@ msgid "You'll have to sign back in on all signed-out devices" msgstr "您必須在所有已登出的裝置上重新登入" #. Security settings: confirmation modal body for turning on passkey-based two-factor authentication. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:56 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:55 msgid "You'll need one of your passkeys to sign in on a new device. If you lose every passkey you can be locked out of your account. Backup codes will be saved for you so you still have a way in." msgstr "在新裝置上登入時,您需要使用其中一個通行金鑰。如果您遺失所有通行金鑰,就可能永久無法存取您的帳號。系統會為您保存備用碼,讓您仍有辦法登入。" @@ -39918,12 +39935,12 @@ msgstr "您的帳號建立時間太短,無法在此社群傳送訊息。" msgid "Your account request is pending approval. You can sign in after an admin approves it." msgstr "您的帳號申請正在等待核准。管理員核准後即可登入。" -#: src/features/auth/components/modals/SudoVerificationModal.tsx:237 +#: src/features/auth/components/modals/SudoVerificationModal.tsx:280 msgid "Your account requires multi-factor authentication, but no supported methods are set up on this device. Sign in on a device with your authenticator app or security key, or contact support." msgstr "您的帳號需要多重要素驗證,但此裝置上未設定任何支援的方法。請使用已設定驗證器應用程式或安全金鑰的裝置登入,或聯絡客服。" #. Security settings: confirmation modal body for turning off passkey-based two-factor authentication when passkeys are the only second factor on the account. -#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:69 +#: src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx:68 msgid "Your account will no longer be protected by two-factor authentication when you sign in with your password. You'll also lose elevated permissions in servers that require two-factor authentication." msgstr "使用密碼登入時,您的帳號將不再受雙重驗證保護。您也會失去在要求雙重驗證的社群中的進階權限。" @@ -39941,16 +39958,6 @@ msgstr "您的操作未能完成,因為系統偵測到有安全疑慮。如果 msgid "Your application is pending review. You can still update your listing details or withdraw the application." msgstr "您的申請正在審核中。您仍然可以更新刊登資訊或撤回申請。" -#. Error shown when the browser blocks the pop-up window used for password manager passkeys. -#: src/features/auth/utils/PasskeyBridge.ts:25 -msgid "Your browser blocked the passkey pop-up window. Allow pop-ups for this site and try again." -msgstr "您的瀏覽器封鎖了通行金鑰彈出式視窗。請允許此網站的彈出式視窗,然後再試一次。" - -#. Error shown when a passkey prompt fails because the browser cannot use the passkey on this web address. Keep plain. -#: src/features/auth/utils/WebAuthnUtils.ts:18 -msgid "Your browser does not support passkeys on this domain. Update your browser, or sign in with your password and two-factor code." -msgstr "您的瀏覽器不支援在此網域使用通行金鑰。請更新瀏覽器,或使用密碼和雙重驗證碼登入。" - #. Body of the browser-audio-required modal explaining why the user must click before audio can play. #: src/features/voice/components/modals/AudioPlaybackPermissionModal.tsx:12 msgid "Your browser requires user interaction before audio can be played. Click the button below to enable voice chat." @@ -39991,6 +39998,16 @@ msgstr "您的社群至少需要 {minMemberCount, plural, one {# 位成員} othe msgid "Your credit card has been checked. If the card is valid, mature content will unlock shortly. You can close this tab and return to the app." msgstr "您的信用卡已完成檢查。如果卡片有效,成人內容將很快解鎖。您可以關閉此分頁並返回應用程式。" +#. Body of the modal that asks the user to save an updated passkey. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:28 +msgid "Your device will ask you to save an updated passkey for {name}. It replaces the old one." +msgstr "您的裝置會要求您儲存 {name} 的更新通行金鑰。這會取代舊的通行金鑰。" + +#. Body of the modal that asks the user to save an updated passkey when they signed in with a phone or security key. name is the name the user gave the passkey. Keep plain. +#: src/features/auth/passkey_migration/PasskeyUpdateModal.tsx:33 +msgid "Your device will ask you to save an updated passkey for {name}. Use the same phone or security key you just used." +msgstr "您的裝置會要求您儲存 {name} 的更新通行金鑰。請使用您剛才使用的同一支手機或安全金鑰。" + #. Toast confirmation after the email address has been successfully updated. #: src/features/auth/components/modals/required_action/RequiredActionDescriptors.ts:124 msgid "Your email address has been updated." @@ -40317,7 +40334,7 @@ msgstr "縮放" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that increases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:623 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:628 #: src/features/input/state/input_keybind/shared.ts:253 #: src/features/platform/utils/DesktopLocaleBridge.ts:112 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:82 @@ -40328,7 +40345,7 @@ msgstr "放大" #. Keyboard shortcut action label shown in the shortcuts list and keybind editor. Keep short, sentence case. #. Native View menu item that decreases UI zoom level. #. Settings search synonym. Used to match this term when the user types it in the settings search bar. -#: src/features/i18n/utils/CommonMessageDescriptors.ts:619 +#: src/features/i18n/utils/CommonMessageDescriptors.ts:624 #: src/features/input/state/input_keybind/shared.ts:257 #: src/features/platform/utils/DesktopLocaleBridge.ts:116 #: src/features/user/components/settings_utils/search_index/KeybindsIndex.ts:86 diff --git a/fluxer_app/src/features/i18n/utils/CommonMessageDescriptors.ts b/fluxer_app/src/features/i18n/utils/CommonMessageDescriptors.ts index cce8f3cd7..cc8b4347b 100644 --- a/fluxer_app/src/features/i18n/utils/CommonMessageDescriptors.ts +++ b/fluxer_app/src/features/i18n/utils/CommonMessageDescriptors.ts @@ -67,6 +67,11 @@ export const HOURS_AND_MINUTES_DURATION_DESCRIPTOR = msg({ message: '{hours, plural, one {# hour} other {# hours}} and {minutes, plural, one {# minute} other {# minutes}}', comment: 'Generic duration label for an interval that includes hours and remaining minutes.', }); +export const COULDN_T_VERIFY_WITH_PASSKEY_DESCRIPTOR = msg({ + message: "Couldn't verify with passkey. Try again.", + comment: + 'Error shown when verifying with a passkey fails, in the sudo (re-auth) modal and on the sign-in page. Keep plain.', +}); export const TRY_AGAIN_DESCRIPTOR = msg({ message: 'Try again', comment: 'Generic action label for retrying a failed or interrupted operation.', diff --git a/fluxer_app/src/features/platform/service_worker/WorkerFetchRouting.test.ts b/fluxer_app/src/features/platform/service_worker/WorkerFetchRouting.test.ts index f52f50d1c..288d1c4c1 100644 --- a/fluxer_app/src/features/platform/service_worker/WorkerFetchRouting.test.ts +++ b/fluxer_app/src/features/platform/service_worker/WorkerFetchRouting.test.ts @@ -35,6 +35,9 @@ describe('WorkerFetchRouting', () => { expect(getWorkerFetchRoute(request(`${WORKER_ORIGIN}/`, {headers: {accept: 'text/html'}}), WORKER_ORIGIN)).toBe( 'ignore', ); + expect( + getWorkerFetchRoute(request(`${WORKER_ORIGIN}/passkey-bridge`, {headers: {accept: 'text/html'}}), WORKER_ORIGIN), + ).toBe('ignore'); expect(getWorkerFetchRoute(request(`${WORKER_ORIGIN}/manifest.json`), WORKER_ORIGIN)).toBe('metadata'); expect(getWorkerFetchRoute(request(`${WORKER_ORIGIN}/version.json`), WORKER_ORIGIN)).toBe('metadata'); }); diff --git a/fluxer_app/src/features/platform/types/Electron.ts b/fluxer_app/src/features/platform/types/Electron.ts index 21c2cc64e..a41baceec 100644 --- a/fluxer_app/src/features/platform/types/Electron.ts +++ b/fluxer_app/src/features/platform/types/Electron.ts @@ -441,6 +441,7 @@ export interface ElectronAPI { nativeAudio: NativeAudioApi; voiceEngine?: VoiceEngineV2BridgeHardwareEncoderApi; domainMigration?: {version: number; setAppOrigin(origin: string): Promise}; + passkeyRpIds?: ReadonlyArray; } export type VirtmicUnavailableReason = diff --git a/fluxer_app/src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx b/fluxer_app/src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx index 202193c3d..00cf4d169 100644 --- a/fluxer_app/src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx +++ b/fluxer_app/src/features/user/components/modals/tabs/account_security_tab/SecurityTab.tsx @@ -8,7 +8,6 @@ import {openClaimAccountModal} from '@app/features/auth/components/modals/ClaimA import {MfaTotpDisableModal} from '@app/features/auth/components/modals/MfaTotpDisableModal'; import {MfaTotpEnableModal} from '@app/features/auth/components/modals/MfaTotpEnableModal'; import {PasskeyNameModal} from '@app/features/auth/components/modals/PasskeyNameModal'; -import {runPasskeyViaBridge} from '@app/features/auth/utils/PasskeyBridge'; import * as WebAuthnUtils from '@app/features/auth/utils/WebAuthnUtils'; import { CLAIM_ACCOUNT_DESCRIPTOR, @@ -141,17 +140,6 @@ export const SecurityTabContent: React.FC = observer( throw error; } }; - const registerPasskeyWithPasswordManager = async (name: string) => { - const options = UserCommands.getWebAuthnRegistrationOptions(); - const credential = runPasskeyViaBridge('register', options); - try { - const [resolvedOptions, resolvedCredential] = await Promise.all([options, credential]); - await UserCommands.registerWebAuthnCredential(resolvedCredential, resolvedOptions.challenge, name); - } catch (error) { - logger.error('Failed to add passkey in the pop-up window', error); - throw error; - } - }; const handleAddPasskey = () => { if (!canAddPasskey) { return; @@ -160,7 +148,6 @@ export const SecurityTabContent: React.FC = observer( modal(() => ( )), diff --git a/fluxer_app/src/features/user/state/WebAuthnCredentials.ts b/fluxer_app/src/features/user/state/WebAuthnCredentials.ts index f7d16af85..54f391576 100644 --- a/fluxer_app/src/features/user/state/WebAuthnCredentials.ts +++ b/fluxer_app/src/features/user/state/WebAuthnCredentials.ts @@ -10,6 +10,7 @@ export interface WebAuthnCredential { name: string; created_at: string; last_used_at: string | null; + rp_id: string; } class WebAuthnCredentials { diff --git a/fluxer_app/src/index.tsx b/fluxer_app/src/index.tsx index bd3344ada..9b986923c 100644 --- a/fluxer_app/src/index.tsx +++ b/fluxer_app/src/index.tsx @@ -18,8 +18,11 @@ import {Routes} from '@app/app/Routes'; import {AppErrorBoundary} from '@app/features/app/components/AppErrorBoundary'; import {BootstrapErrorScreen} from '@app/features/app/components/BootstrapErrorScreen'; import {ErrorFallback} from '@app/features/app/components/ErrorFallback'; +import { + type DomainMigrationSide, + resolveDomainMigrationSide, +} from '@app/features/app/domain_migration/DomainMigrationCore'; import {runDomainMigrationPreMount} from '@app/features/app/domain_migration/DomainMigrationPreMount'; -import {resolvePasskeyBridgeOpenerOrigin} from '@app/features/auth/utils/PasskeyBridgeProtocol'; import {installSelfXssNotice} from '@app/features/devtools/utils/SelfXssNotice'; import {AppI18nProvider} from '@app/features/i18n/components/AppI18nProvider'; import {installLocaleSwitchWatchdog} from '@app/features/i18n/utils/LocaleSwitchWatchdog'; @@ -35,6 +38,7 @@ import { import {loadLazyModule} from '@app/features/platform/utils/LazyModuleLoader'; import {scheduleNonLatinScriptFaces} from '@app/features/theme/fonts/ScriptFontLoader'; import {installVoiceSubscriptionDebugApi} from '@app/features/voice/diagnostics/VoiceSubscriptionDebugApi'; +import {PASSKEY_BRIDGE_PATH} from '@fluxer/constants/src/PasskeyConstants'; import {i18n} from '@lingui/core'; import {configure} from 'mobx'; import type {ReactNode} from 'react'; @@ -117,14 +121,22 @@ async function bootstrapThemeStudio(): Promise { ); } -async function bootstrapPasskeyBridge(openerOrigin: string): Promise { - const [{PasskeyBridgeScreen}] = await Promise.all([ - loadLazyModule(() => import('@app/features/auth/passkey_bridge/PasskeyBridgeScreen')), +async function bootstrapPasskeyBridge(side: DomainMigrationSide): Promise { + const hash = window.location.hash; + const opensInOwnTab = window.history.length === 1; + window.history.replaceState(null, '', PASSKEY_BRIDGE_PATH); + const [{PasskeyBridgePage}] = await Promise.all([ + loadLazyModule(() => import('@app/features/auth/passkey_migration/PasskeyBridgePage')), initI18n(), ]); mountRoot( - + , 'index.passkey-bridge', ); @@ -184,9 +196,10 @@ async function bootstrapApp(): Promise { } async function bootstrap(): Promise { - const passkeyBridgeOpenerOrigin = resolvePasskeyBridgeOpenerOrigin(window.location.origin, window.location.pathname); - if (passkeyBridgeOpenerOrigin !== null) { - await bootstrapPasskeyBridge(passkeyBridgeOpenerOrigin); + const passkeyBridgeSide = + window.location.pathname === PASSKEY_BRIDGE_PATH ? resolveDomainMigrationSide(window.location.origin) : null; + if (passkeyBridgeSide !== null) { + await bootstrapPasskeyBridge(passkeyBridgeSide); return; } if (await runDomainMigrationPreMount()) { diff --git a/fluxer_desktop/build_resources/entitlements.mac.canary.plist b/fluxer_desktop/build_resources/entitlements.mac.canary.plist index c7caa71f3..b904d0db4 100644 --- a/fluxer_desktop/build_resources/entitlements.mac.canary.plist +++ b/fluxer_desktop/build_resources/entitlements.mac.canary.plist @@ -28,6 +28,8 @@ webcredentials:fluxer.app webcredentials:web.fluxer.app webcredentials:web.canary.fluxer.app + webcredentials:fluxer.com + webcredentials:canary.fluxer.com diff --git a/fluxer_desktop/build_resources/entitlements.mac.stable.plist b/fluxer_desktop/build_resources/entitlements.mac.stable.plist index 11f159aa7..966eacf54 100644 --- a/fluxer_desktop/build_resources/entitlements.mac.stable.plist +++ b/fluxer_desktop/build_resources/entitlements.mac.stable.plist @@ -27,6 +27,8 @@ webcredentials:fluxer.app webcredentials:web.fluxer.app + webcredentials:fluxer.com + webcredentials:canary.fluxer.com diff --git a/fluxer_desktop/src/common/Constants.ts b/fluxer_desktop/src/common/Constants.ts index 28197e22d..267295280 100644 --- a/fluxer_desktop/src/common/Constants.ts +++ b/fluxer_desktop/src/common/Constants.ts @@ -6,6 +6,7 @@ export const CANARY_APP_URL = 'https://web.canary.fluxer.app'; export const STABLE_MIGRATED_APP_ORIGIN = 'https://fluxer.com'; export const CANARY_MIGRATED_APP_ORIGIN = 'https://canary.fluxer.com'; export const MIGRATED_APP_ENTRY_PATH = '/app'; +export const PASSKEY_RP_IDS = ['fluxer.app', 'fluxer.com'] as const; export const STATIC_CDN_URL = 'https://fluxerstatic.com'; export const DEFAULT_WINDOW_WIDTH = 1280; export const DEFAULT_WINDOW_HEIGHT = 800; diff --git a/fluxer_desktop/src/common/Types.ts b/fluxer_desktop/src/common/Types.ts index 56710ed69..bbee1a6c9 100644 --- a/fluxer_desktop/src/common/Types.ts +++ b/fluxer_desktop/src/common/Types.ts @@ -764,6 +764,7 @@ export interface ElectronAPI { passkeyIsSupported: () => Promise; passkeyAuthenticate: (options: PublicKeyCredentialRequestOptionsJSON) => Promise; passkeyRegister: (options: PublicKeyCredentialCreationOptionsJSON) => Promise; + passkeyRpIds: ReadonlyArray; domainMigration: DomainMigrationApi; virtmic: VirtmicApi; nativeAudio: NativeAudioApi; diff --git a/fluxer_desktop/src/preload/index.ts b/fluxer_desktop/src/preload/index.ts index 8ea054911..3328801fd 100644 --- a/fluxer_desktop/src/preload/index.ts +++ b/fluxer_desktop/src/preload/index.ts @@ -1,6 +1,7 @@ // SPDX-License-Identifier: AGPL-3.0-or-later import {BUILD_CHANNEL} from '@electron/common/BuildChannel'; +import {PASSKEY_RP_IDS} from '@electron/common/Constants'; import type { AppMetricsSnapshot, ClipboardWriteFileOptions, @@ -451,6 +452,7 @@ const api: ElectronAPI = { options: PublicKeyCredentialCreationOptionsJSON, requestContext?: {pin?: string}, ): Promise => ipcRenderer.invoke('passkey-register', options, requestContext), + passkeyRpIds: PASSKEY_RP_IDS, domainMigration: { version: 1, setAppOrigin: (origin: string): Promise => ipcRenderer.invoke('domain-migration:set-app-origin', origin), diff --git a/fluxer_docs/src/content/docs/admin-api/users.mdx b/fluxer_docs/src/content/docs/admin-api/users.mdx index 68188d4c5..3461fb5f7 100644 --- a/fluxer_docs/src/content/docs/admin-api/users.mdx +++ b/fluxer_docs/src/content/docs/admin-api/users.mdx @@ -1914,7 +1914,7 @@ Lists the passkeys and security keys registered on the account, as a bare JSON a 1 An account with no credential receives an empty array -The complete credential set is returned in one response, bounded by the ten credentials an account may register. No public key, attestation object, or signature counter is exposed. +The complete credential set is returned in one response, bounded by the ten credentials an account may register. [Replaced passkeys](/http-api/users/mfa/#replaced-passkeys) are left out, and `credential_count` counts only the returned ones. No public key, attestation object, or signature counter is exposed. ### Side effects @@ -1944,7 +1944,7 @@ Deletes one passkey or security key from the account. Requires `user:update:mfa` | 204 | empty | The credential was deleted | | 4041 | [error response](/admin-api/#error-response) | `UNKNOWN_USER`, because the account does not exist | -1 A credential that does not exist on the account also answers `UNKNOWN_USER`, never `UNKNOWN_WEBAUTHN_CREDENTIAL`, so a 404 does not distinguish an unknown account from an unknown credential +1 A credential that does not exist on the account also answers `UNKNOWN_USER`, so a 404 with that code does not distinguish an unknown account from an unknown credential. A [replaced passkey](/http-api/users/mfa/#replaced-passkeys) answers `UNKNOWN_WEBAUTHN_CREDENTIAL` and records no audit entry :::caution[A deleted passkey cannot be restored] The passkey or security key stops authenticating immediately and cannot be restored from its deleted record. The account holder must register it again to use it later. @@ -1952,7 +1952,7 @@ The passkey or security key stops authenticating immediately and cannot be resto ### Side effects -The credential record is deleted. When it was the account's final WebAuthn credential and the account had enabled passkeys as a second factor, Fluxer removes the `WEBAUTHN` [authenticator type](/http-api/users/#authenticator-types) from the account, emits [User Update](/gateway/events/#user-update) to the account's own sessions, and copies the account's authenticator types onto the bot user of every application the account owns. An account that never enabled passkeys as a second factor holds no `WEBAUTHN` type to remove. +The credential record is deleted, together with the [replaced passkeys](/http-api/users/mfa/#replaced-passkeys) it took over from, and every replaced passkey goes once no listed credential remains. When it was the account's final WebAuthn credential and the account had enabled passkeys as a second factor, Fluxer removes the `WEBAUTHN` [authenticator type](/http-api/users/#authenticator-types) from the account, emits [User Update](/gateway/events/#user-update) to the account's own sessions, and copies the account's authenticator types onto the bot user of every application the account owns. An account that never enabled passkeys as a second factor holds no `WEBAUTHN` type to remove. [WebAuthn Credentials Update](/gateway/events/#webauthn-credentials-update) is emitted to the target account with its remaining credentials. diff --git a/fluxer_docs/src/content/docs/authentication.md b/fluxer_docs/src/content/docs/authentication.md index e0fbeb90a..54b8bca75 100644 --- a/fluxer_docs/src/content/docs/authentication.md +++ b/fluxer_docs/src/content/docs/authentication.md @@ -111,6 +111,7 @@ An instance can enforce single sign-on once it is configured and enabled. While - [Register an account](/http-api/authentication/#register-an-account) and [Log in with a password](/http-api/authentication/#log-in-with-a-password). - [Get discoverable WebAuthn options](/http-api/authentication/#get-discoverable-webauthn-options) and [Authenticate with WebAuthn](/http-api/authentication/#authenticate-with-webauthn). - [Complete login with TOTP](/http-api/authentication/#complete-login-with-totp), [Get WebAuthn MFA options](/http-api/authentication/#get-webauthn-mfa-options), and [Complete login with WebAuthn MFA](/http-api/authentication/#complete-login-with-webauthn-mfa). +- [Start passkey bridge sign-in](/http-api/authentication/#start-passkey-bridge-sign-in) and [Redeem passkey bridge sign-in](/http-api/authentication/#redeem-passkey-bridge-sign-in). - [Verify an email address](/http-api/authentication/#verify-an-email-address) and [Resend email verification](/http-api/authentication/#resend-email-verification). - [Request password recovery](/http-api/authentication/#request-password-recovery), [Validate a password reset token](/http-api/authentication/#validate-a-password-reset-token), and [Reset a password](/http-api/authentication/#reset-a-password). - [Revert an email change](/http-api/authentication/#revert-an-email-change). diff --git a/fluxer_docs/src/content/docs/gateway/events.md b/fluxer_docs/src/content/docs/gateway/events.md index 05bbe0580..9a7b9902e 100644 --- a/fluxer_docs/src/content/docs/gateway/events.md +++ b/fluxer_docs/src/content/docs/gateway/events.md @@ -210,6 +210,9 @@ The first entry always has `session_id: "all"` and the account's combined status | name | string | Credential name | | created_at | ISO8601 timestamp | When the credential was registered | | last_used_at | ?ISO8601 timestamp | When the credential was last used | +| rp_id | string | The domain the passkey was created for, as in the [WebAuthn credential object](/http-api/users/mfa/#webauthn-credential-object) | + +[Replaced passkeys](/http-api/users/mfa/#replaced-passkeys) never appear in this list. #### RTC region object diff --git a/fluxer_docs/src/content/docs/http-api/authentication.mdx b/fluxer_docs/src/content/docs/http-api/authentication.mdx index 96a382570..083e48dcb 100644 --- a/fluxer_docs/src/content/docs/http-api/authentication.mdx +++ b/fluxer_docs/src/content/docs/http-api/authentication.mdx @@ -1,7 +1,7 @@ --- # SPDX-License-Identifier: AGPL-3.0-or-later title: Authentication resource -description: Registration, login, credentials, sessions, recovery, SSO, IP authorisation, desktop handoff, and origin handoff. +description: Registration, login, credentials, sessions, recovery, SSO, IP authorisation, desktop handoff, origin handoff, and the passkey bridge. --- import RouteHeader from '@/components/RouteHeader.astro'; @@ -22,7 +22,7 @@ Every route has a route bucket and is also subject to the [global HTTP limit](/t An invalid JSON shape returns 400 `INVALID_FORM_BODY` with [validation error object](/http-api/#validation-error-object) entries in `errors`. An unexpected failure returns 500 `INTERNAL_SERVER_ERROR`. Every enumerated code on this page is registered in [Errors](/http-api/errors/), and every snowflake field is the decimal string form defined by [Snowflakes](/snowflakes/). -When SSO is both enabled and enforced, every local authentication operation returns 403 `SSO_REQUIRED`. The SSO status route, SSO start and completion, logout, both session routes, and every handoff route stay available under enforcement. Every other route on this page is a local authentication operation. +When SSO is both enabled and enforced, every local authentication operation returns 403 `SSO_REQUIRED`. The SSO status route, SSO start and completion, logout, both session routes, every handoff route, and the passkey bridge options, complete, and cancel routes stay available under enforcement. Every other route on this page is a local authentication operation. :::caution[SSO enforcement precedes every other check] An enforced instance returns 403 `SSO_REQUIRED` even for a malformed or unauthenticated local authentication request. @@ -156,7 +156,7 @@ The ticket and the method list a client needs to finish a login with a second fa Both WebAuthn option operations return a PublicKeyCredential request options object that a browser passes straight to its credential request. The [WebAuthn authentication options object](/http-api/users/mfa/#webauthn-authentication-options-object) on the Multi-factor authentication resource defines its fields, together with its [WebAuthn credential descriptor](/http-api/users/mfa/#webauthn-credential-descriptor-object) and [WebAuthn client extension inputs](/http-api/users/mfa/#webauthn-client-extension-inputs-object) objects. -A challenge issued for MFA completion is also bound to its ticket and account, so it cannot be replayed against discoverable login. The MFA route lists every registered credential for the resolved account in `allowCredentials`. The discoverable route omits the member, because discovery happens at the authenticator. +A challenge issued for MFA completion is also bound to its ticket and account, so it cannot be replayed against discoverable login. The MFA route lists one group of the resolved account's credentials in `allowCredentials`, and the discoverable route omits the member, because discovery happens at the authenticator. [Passkey domain selection](/http-api/users/mfa/#passkey-domain-selection) decides the group and `rpId` on both routes. @@ -321,6 +321,80 @@ The client state released by one redeemed origin handoff. | --- | --- | --- | | payload | string | The base64url string stored by [create origin handoff](#create-origin-handoff), returned unchanged | +## Passkey bridge + +The official instance is moving its web client from `https://web.fluxer.app` to `https://fluxer.com`, and its canary client from `https://web.canary.fluxer.app` to `https://canary.fluxer.com`. A passkey works only under the domain it was created for, so a page on a new origin cannot use a passkey created for `fluxer.app`. The passkey bridge runs that passkey somewhere that can, then hands the result back to the new origin. + +The bridge exists only on the official instance and only for requests from the two new origins. It keeps working while the [domain migration switch](/http-api/instance/#domain-migration-object) is off, so people already on a new origin can still use their passkeys. Every bridge route on a self-hosted instance returns 403 `INVALID_API_ORIGIN`. + +A ceremony has one of three purposes. `login` signs in with any passkey the person picks, `login_mfa` finishes a password login whose second factor is passkeys, and `sudo` proves [sudo mode](/http-api/users/mfa/#sudo-mode) through [start passkey bridge sudo verification](/http-api/users/mfa/#start-passkey-bridge-sudo-verification). It also has one of two runners. With `page`, the ceremony runs on the paired legacy origin at `/passkey-bridge`. With `native`, the desktop client on the new origin runs it itself. + +A ceremony runs in four steps. + +1. The page on the new origin draws a nonce, keeps it, and starts the ceremony with the nonce's SHA-256 digest. +2. The runner fetches [passkey bridge options](#get-passkey-bridge-options), asks the authenticator, and calls [complete passkey bridge](#complete-passkey-bridge) or [cancel passkey bridge](#cancel-passkey-bridge). +3. Completing or cancelling issues a completion code. The `page` runner gets it in the fragment of `return_url` and navigates there. The `native` runner gets it in the response. +4. The page on the new origin redeems the ceremony once with the nonce and the completion code. + +Redemption needs both secrets. Someone who starts a ceremony and sends another person the bridge link holds the nonce, but the completion code reaches the other person's browser, which holds no nonce. + +A ceremony lasts 10 minutes from its start, or 5 minutes for `login_mfa`, which is the life of an MFA ticket. It is `pending` until it completes or is cancelled. Only a passkey the account lists for `fluxer.app` completes a ceremony. A [replaced passkey](/http-api/users/mfa/#replaced-passkeys) never does. + +When the request comes from a new origin and the instance-wide [domain migration switch](/http-api/instance/#domain-migration-object) is on, a completed redemption also opens a [passkey update](/http-api/users/mfa/#passkey-updates) for the session it signs in, or for the session that proves sudo mode. + +## Passkey bridge start object + +One started passkey bridge ceremony. + +### Structure + +| Field | Type | Description | +| --- | --- | --- | +| ceremony_id | string | The ceremony identifier, 32 random bytes as 43 base64url characters | +| bridge_url1 | ?string | The page that runs the ceremony | + +1 The paired legacy origin, the path `/passkey-bridge`, and the ceremony ID as the fragment. Null for the `native` runner + +## Passkey bridge options object + +The WebAuthn request for one pending ceremony. + +### Structure + +| Field | Type | Description | +| --- | --- | --- | +| options | [WebAuthn authentication options](#webauthn-authentication-options) object | The request options the runner passes to the authenticator | + +## Passkey bridge finish object + +What the runner does after a ceremony completes or is cancelled. Exactly one field is non-null. + +### Structure + +| Field | Type | Description | +| --- | --- | --- | +| return_url1 | ?string | Where the `page` runner goes next, null for the `native` runner | +| completion_code2 | ?string | The code the `native` runner redeems, null for the `page` runner | + +1 Always `/passkey-bridge` on the new origin, whatever the purpose. The fragment is `passkey-bridge=` followed by the ceremony ID, a full stop, and the completion code. The page there decides where the code goes next from what the starting tab kept, so the start request cannot choose where the code lands + +2 32 random bytes as 43 base64url characters. Each call issues a new one + +## Passkey bridge sign-in redemption object + +The result of one redeemed `login` or `login_mfa` ceremony. + +### Structure + +| Field | Type | Description | +| --- | --- | --- | +| status | string | The ceremony state, either `completed` or `cancelled` | +| token?1 | string | The newly issued user session token | +| user_id?1 | snowflake | The authenticated user ID | +| user?1 | [partial user](/http-api/users/#partial-user-object) object | The public representation of the authenticated account | + +1 Present together only when the status is `completed` + ## Get SSO status @@ -633,7 +707,7 @@ Resolves the account from an MFA ticket and creates a challenge restricted to th 1 The ticket is read but not consumed -A client MUST still complete the returned challenge through [complete login with WebAuthn MFA](#complete-login-with-webauthn-mfa) before the ticket expires. An expired or unknown ticket returns the field code `SESSION_TIMEOUT` on `ticket`. An account with no registered credential returns 400 `NO_PASSKEYS_REGISTERED`. +A client MUST still complete the returned challenge through [complete login with WebAuthn MFA](#complete-login-with-webauthn-mfa) before the ticket expires. An expired or unknown ticket returns the field code `SESSION_TIMEOUT` on `ticket`. An account with no credential in the group [passkey domain selection](/http-api/users/mfa/#passkey-domain-selection) picks returns 400 `NO_PASSKEYS_REGISTERED`. ### Response @@ -670,7 +744,7 @@ Consumes the MFA ticket, verifies the WebAuthn assertion against the challenge, 1 The challenge is consumed before verification and is accepted only when its bound context, account, and ticket all match this request -An expired or unknown ticket returns the field code `SESSION_TIMEOUT` on `ticket`. A ticket for an account that does not count passkeys as its second factor returns 400 `TWO_FACTOR_REQUIRED`, which is what a TOTP account holding registered credentials without [Set WebAuthn two-factor authentication](/http-api/users/mfa/#set-webauthn-two-factor-authentication) receives. A challenge mismatch, an unknown credential, a stored public key that cannot be decoded, a signature counter that the authenticator did not advance, and a failed signature verification all return 401 `PASSKEY_AUTHENTICATION_FAILED`. A verified assertion whose reported signature counter cannot be read returns 500 `INVALID_WEBAUTHN_AUTHENTICATION_COUNTER`. +An expired or unknown ticket returns the field code `SESSION_TIMEOUT` on `ticket`. A ticket for an account that does not count passkeys as its second factor returns 400 `TWO_FACTOR_REQUIRED`, which is what a TOTP account holding registered credentials without [Set WebAuthn two-factor authentication](/http-api/users/mfa/#set-webauthn-two-factor-authentication) receives. A challenge mismatch, an unknown credential, a credential the options did not list, a stored public key that cannot be decoded, a signature counter that the authenticator did not advance, and a failed signature verification all return 401 `PASSKEY_AUTHENTICATION_FAILED`. A verified assertion whose reported signature counter cannot be read returns 500 `INVALID_WEBAUTHN_AUTHENTICATION_COUNTER`. This operation shares the MFA attempt allowances of [complete login with TOTP](#complete-login-with-totp). It permits 10 failed attempts per account in 15 minutes and destroys the ticket after 5 failed attempts. An exhausted allowance returns the field code `INVALID_CODE` on `ticket`. @@ -701,7 +775,7 @@ Success consumes the challenge and ticket and creates one authentication session Creates a challenge for passwordless authentication with a discoverable credential. Authentication is not required. Returns a [WebAuthn authentication options](#webauthn-authentication-options) object. -The request has no body. The response omits `allowCredentials` and requests `required` user verification. +The request has no body. The response omits `allowCredentials` and requests `required` user verification. Its `rpId` follows [passkey domain selection](/http-api/users/mfa/#passkey-domain-selection). ### Response @@ -736,7 +810,7 @@ Resolves the account from the presented credential ID, verifies the assertion wi 1 The challenge is consumed before verification and is accepted only when it was issued for the discoverable context, so a challenge issued for MFA or for sudo mode cannot be used here -An unknown credential ID, a challenge mismatch, a stored public key that cannot be decoded, a signature counter that the authenticator did not advance, and a failed signature verification all return 401 `PASSKEY_AUTHENTICATION_FAILED`. A verified assertion whose reported signature counter cannot be read returns 500 `INVALID_WEBAUTHN_AUTHENTICATION_COUNTER`. Account suspension returns 403 `ACCOUNT_SUSPENDED_TEMPORARILY` or 403 `ACCOUNT_SUSPENDED_PERMANENTLY`. +An unknown credential ID, a challenge mismatch, a credential for another domain than the challenge, a stored public key that cannot be decoded, a signature counter that the authenticator did not advance, and a failed signature verification all return 401 `PASSKEY_AUTHENTICATION_FAILED`. A verified assertion whose reported signature counter cannot be read returns 500 `INVALID_WEBAUTHN_AUTHENTICATION_COUNTER`. Account suspension returns 403 `ACCOUNT_SUSPENDED_TEMPORARILY` or 403 `ACCOUNT_SUSPENDED_PERMANENTLY`. A bot account returns 403 `BOT_USER_AUTH_SESSION_CREATION_DENIED`. An account that has not been admitted returns 403 `REGISTRATION_PENDING_APPROVAL` or 403 `REGISTRATION_REJECTED`. @@ -1590,3 +1664,210 @@ A redemption that finds the handoff deletes it, whether or not the nonce matches ### Rate limit 10 requests per minute, on the `auth:origin_handoff:redeem` bucket. + +## Start passkey bridge sign-in + + + +Starts a `login` or `login_mfa` [passkey bridge](#passkey-bridge) ceremony. Authentication is not required. Returns a [passkey bridge start](#passkey-bridge-start-object) object. + +### JSON body + +| Field | Type | Description | +| --- | --- | --- | +| purpose | string | The purpose, either `login` or `login_mfa` | +| runner | string | Where the ceremony runs, either `page` or `native` | +| ticket?1 | string | The ticket returned by [password login](#log-in-with-a-password) (1-256 characters) | +| nonce_hash | string | The SHA-256 digest of the nonce the new origin keeps, as 64 lowercase hex characters | + +1 Required for `login_mfa` and refused for `login`. The ticket is read but not consumed + +The request MUST send an `Origin` header of `https://fluxer.com` or `https://canary.fluxer.com`. Any other `Origin`, none, or a self-hosted instance returns 403 `INVALID_API_ORIGIN`. + +For `login_mfa`, an expired or unknown ticket returns the field code `SESSION_TIMEOUT` on `ticket`. A ticket for an account that does not count passkeys as its second factor returns 400 `TWO_FACTOR_REQUIRED`, and one for an account with no passkey listed for `fluxer.app` returns 400 `NO_PASSKEYS_REGISTERED`. A ticket that resolves to a bot account returns 403 `BOT_USER_AUTH_ENDPOINT_ACCESS_DENIED`. + +### Response + +| Status | Body | Condition | +| --- | --- | --- | +| 200 | [passkey bridge start](#passkey-bridge-start-object) object | The ceremony was started | +| 400 | [error response](/http-api/#error-response) | The body or ticket is invalid, passkeys are not the second factor, or the account has no `fluxer.app` passkey | +| 403 | [error response](/http-api/#error-response) | SSO enforcement rejects the operation, the `Origin` is refused, or the ticket resolves to a bot account | +| 404 | [error response](/http-api/#error-response) | The ticket resolves to an account that no longer exists | +| 429 | [rate limit response](/topics/rate-limits/#rate-limit-response-object) | Route or global bucket denies the request | +| 500 | [error response](/http-api/#error-response) | Unexpected internal failure occurs | +| 503 | [error response](/http-api/#error-response) | The instance is at its in-flight request ceiling | + +### Side effects + +Fluxer stores the ceremony for 10 minutes, or 5 minutes for `login_mfa`, under a key derived from its identifier. It changes no account state. No Gateway Dispatch is emitted. + +### Rate limit + +10 requests per minute, on the `auth:passkey_bridge:start` bucket. + +## Get passkey bridge options + + + +Issues the WebAuthn request for a pending [passkey bridge](#passkey-bridge) ceremony. Authentication is not required. Returns a [passkey bridge options](#passkey-bridge-options-object) object. + +### Path parameters + +| Field | Type | Description | +| --- | --- | --- | +| ceremony_id | string | The identifier from the start response, 43 base64url characters | + +The request has no body. Its `Origin` MUST be the origin that runs the ceremony, which is the paired legacy origin for `page` and the new origin for `native`. Any other `Origin` returns 403 `INVALID_API_ORIGIN`. An unknown, expired, completed, or cancelled ceremony returns 404 `UNKNOWN_PASSKEY_BRIDGE`, as does a request that arrives while another request holds the same ceremony. + +A `login` ceremony gets options with no `allowCredentials` and `required` user verification. A `login_mfa` or `sudo` ceremony gets the account's passkeys for `fluxer.app` in `allowCredentials` and `discouraged` user verification, and an account left with none returns 400 `NO_PASSKEYS_REGISTERED`. `rpId` is always `fluxer.app`. + +### Response + +| Status | Body | Condition | +| --- | --- | --- | +| 200 | [passkey bridge options](#passkey-bridge-options-object) object | A challenge was issued | +| 400 | [error response](/http-api/#error-response) | The ceremony ID is malformed, or the account has no passkey for `fluxer.app` | +| 403 | [error response](/http-api/#error-response) | The `Origin` is refused, returning `INVALID_API_ORIGIN` | +| 404 | [error response](/http-api/#error-response) | The ceremony is not pending, returning `UNKNOWN_PASSKEY_BRIDGE` | +| 429 | [rate limit response](/topics/rate-limits/#rate-limit-response-object) | Route or global bucket denies the request | +| 500 | [error response](/http-api/#error-response) | Unexpected internal failure occurs | +| 503 | [error response](/http-api/#error-response) | The instance is at its in-flight request ceiling | + +### Side effects + +The operation issues a one-use challenge valid for five minutes and bound to the bridge, so no other WebAuthn route accepts it. It revokes the challenge the ceremony held before, so only the latest options can complete it. No Gateway Dispatch is emitted. + +### Rate limit + +20 requests per minute, on the `auth:passkey_bridge:ceremony` bucket, shared with complete and cancel. + +## Complete passkey bridge + + + +Verifies the assertion for a pending [passkey bridge](#passkey-bridge) ceremony and marks it completed. Authentication is not required. Returns a [passkey bridge finish](#passkey-bridge-finish-object) object. + +### Path parameters + +| Field | Type | Description | +| --- | --- | --- | +| ceremony_id | string | The identifier from the start response, 43 base64url characters | + +### JSON body + +| Field | Type | Description | +| --- | --- | --- | +| response | [WebAuthn assertion](#webauthn-assertion) object | The browser credential assertion | + +The `Origin` rule and the 404 cases are those of [get passkey bridge options](#get-passkey-bridge-options). Fluxer verifies the assertion against the latest challenge and accepts only the ceremony origin in its client data. + +A ceremony with no options issued yet, a credential that is unknown, belongs to another account, is replaced, or is not for `fluxer.app`, and a failed verification all return 401 `PASSKEY_AUTHENTICATION_FAILED`. A verified assertion whose reported signature counter cannot be read returns 500 `INVALID_WEBAUTHN_AUTHENTICATION_COUNTER`. + +A `login_mfa` ceremony whose ticket has expired returns the field code `SESSION_TIMEOUT` on `ticket`. It draws one attempt from the [login MFA allowances](/topics/rate-limits/#allowances-answering-400), and an exhausted allowance returns the field code `INVALID_CODE` on `ticket`. A `sudo` ceremony draws one attempt from the sudo allowance, and an exhausted allowance returns the field code `INVALID_MFA_CODE` on `mfa_code`. + +:::note[A failed completion leaves the ceremony pending] +The runner can fetch new options and try again, or cancel. The MFA allowances bound the retries. +::: + +### Response + +| Status | Body | Condition | +| --- | --- | --- | +| 200 | [passkey bridge finish](#passkey-bridge-finish-object) object | The assertion was accepted | +| 400 | [error response](/http-api/#error-response) | The body, ceremony ID, or ticket is invalid, or an MFA allowance is exhausted | +| 401 | [error response](/http-api/#error-response) | Challenge or assertion verification fails | +| 403 | [error response](/http-api/#error-response) | The `Origin` is refused, or the ticket resolves to a bot account | +| 404 | [error response](/http-api/#error-response) | The ceremony is not pending, returning `UNKNOWN_PASSKEY_BRIDGE` | +| 429 | [rate limit response](/topics/rate-limits/#rate-limit-response-object) | Route or global bucket denies the request | +| 500 | [error response](/http-api/#error-response) | The verified assertion reported no readable signature counter, or the request could not be completed | +| 503 | [error response](/http-api/#error-response) | The instance is at its in-flight request ceiling | + +### Side effects + +Success consumes the challenge, advances the credential's signature counter, sets its last use, and stores the completion code's digest with the ceremony. It creates no session and consumes no MFA ticket. No Gateway Dispatch is emitted. + +### Rate limit + +20 requests per minute, on the shared `auth:passkey_bridge:ceremony` bucket. + +## Cancel passkey bridge + + + +Marks a [passkey bridge](#passkey-bridge) ceremony cancelled so the new origin can stop waiting. Authentication is not required. Returns a [passkey bridge finish](#passkey-bridge-finish-object) object. + +### Path parameters + +| Field | Type | Description | +| --- | --- | --- | +| ceremony_id | string | The identifier from the start response, 43 base64url characters | + +The request has no body, and the `Origin` rule is that of [get passkey bridge options](#get-passkey-bridge-options). Cancelling a cancelled ceremony succeeds again with a new completion code. A completed, unknown, or expired ceremony returns 404 `UNKNOWN_PASSKEY_BRIDGE`. + +### Response + +| Status | Body | Condition | +| --- | --- | --- | +| 200 | [passkey bridge finish](#passkey-bridge-finish-object) object | The ceremony is cancelled | +| 400 | [error response](/http-api/#error-response) | The ceremony ID is malformed | +| 403 | [error response](/http-api/#error-response) | The `Origin` is refused, returning `INVALID_API_ORIGIN` | +| 404 | [error response](/http-api/#error-response) | The ceremony is completed or does not exist, returning `UNKNOWN_PASSKEY_BRIDGE` | +| 429 | [rate limit response](/topics/rate-limits/#rate-limit-response-object) | Route or global bucket denies the request | +| 500 | [error response](/http-api/#error-response) | Unexpected internal failure occurs | +| 503 | [error response](/http-api/#error-response) | The instance is at its in-flight request ceiling | + +### Side effects + +The ceremony stores the digest of the new completion code. No account state changes and no Gateway Dispatch is emitted. + +### Rate limit + +20 requests per minute, on the shared `auth:passkey_bridge:ceremony` bucket. + +## Redeem passkey bridge sign-in + + + +Redeems a finished `login` or `login_mfa` [passkey bridge](#passkey-bridge) ceremony once. Authentication is not required. Returns a [passkey bridge sign-in redemption](#passkey-bridge-sign-in-redemption-object) object. + +### Path parameters + +| Field | Type | Description | +| --- | --- | --- | +| ceremony_id | string | The identifier from the start response, 43 base64url characters | + +### JSON body + +| Field | Type | Description | +| --- | --- | --- | +| nonce | string | The nonce whose digest started the ceremony, as base64url, 16 to 256 characters | +| completion_code | string | The completion code from the return fragment or the finish response, 43 base64url characters | + +The `Origin` MUST be the new origin that started the ceremony, or the request returns 403 `INVALID_API_ORIGIN`. A pending ceremony and a `sudo` ceremony return 404 `UNKNOWN_PASSKEY_BRIDGE` and stay in place, as does an unknown or expired identifier. A wrong nonce or completion code returns 400 `INVALID_PASSKEY_BRIDGE_NONCE`. + +:::caution[A wrong secret consumes the ceremony] +Fluxer deletes the ceremony before it answers a wrong nonce or completion code, so the new origin MUST start a new one. +::: + +A cancelled ceremony returns `cancelled`. A completed `login` ceremony creates a session under the policy of [authenticate with WebAuthn](#authenticate-with-webauthn), so a suspended, bot, or unadmitted account gets the same 403 codes. A completed `login_mfa` ceremony needs its ticket once more, and an expired one returns the field code `SESSION_TIMEOUT` on `ticket`. An account that no longer counts passkeys as its second factor returns 400 `TWO_FACTOR_REQUIRED`. + +### Response + +| Status | Body | Condition | +| --- | --- | --- | +| 200 | [passkey bridge sign-in redemption](#passkey-bridge-sign-in-redemption-object) object | The ceremony was redeemed | +| 400 | [error response](/http-api/#error-response) | The body, ceremony ID, or ticket is invalid, a secret does not match, or passkeys are no longer the second factor | +| 403 | [error response](/http-api/#error-response) | SSO enforcement, the `Origin`, account suspension, a bot account, or an unadmitted registration rejects the request | +| 404 | [error response](/http-api/#error-response) | No redeemable sign-in ceremony has this identifier, returning `UNKNOWN_PASSKEY_BRIDGE` | +| 429 | [rate limit response](/topics/rate-limits/#rate-limit-response-object) | Route or global bucket denies the request | +| 500 | [error response](/http-api/#error-response) | Unexpected internal failure occurs | +| 503 | [error response](/http-api/#error-response) | The instance is at its in-flight request ceiling | + +### Side effects + +A redemption that gets past the secret check deletes the ceremony, whatever happens next. A completed ceremony creates one authentication session, and for `login_mfa` it also consumes the ticket and clears the login MFA allowances. When the request comes from a new origin and the domain migration switch is on, Fluxer opens a [passkey update](/http-api/users/mfa/#passkey-updates) for the new session. No Gateway Dispatch is emitted. + +### Rate limit + +60 requests per minute, on the `auth:passkey_bridge:redeem` bucket. diff --git a/fluxer_docs/src/content/docs/http-api/errors.md b/fluxer_docs/src/content/docs/http-api/errors.md index 87fb50dfc..22d8c1654 100644 --- a/fluxer_docs/src/content/docs/http-api/errors.md +++ b/fluxer_docs/src/content/docs/http-api/errors.md @@ -544,6 +544,10 @@ Invalid handoff code This sign-in transfer doesn't match the one you started +### `INVALID_PASSKEY_BRIDGE_NONCE` + +This passkey request could not be confirmed + ### `INVALID_PERMISSIONS_INTEGER` Permissions must be a valid integer @@ -1108,6 +1112,14 @@ Message wasn't found This sign-in transfer has expired or was already used +### `UNKNOWN_PASSKEY_BRIDGE` + +This passkey request has expired + +### `UNKNOWN_PASSKEY_MIGRATION` + +There is no passkey to update right now + ### `UNKNOWN_REPORT` Unknown report diff --git a/fluxer_docs/src/content/docs/http-api/instance.mdx b/fluxer_docs/src/content/docs/http-api/instance.mdx index 65b1628c0..bea151223 100644 --- a/fluxer_docs/src/content/docs/http-api/instance.mdx +++ b/fluxer_docs/src/content/docs/http-api/instance.mdx @@ -438,7 +438,7 @@ The public part of the instance [domain migration configuration](/admin-api/inst | rollout_salt | string | Salt of the sampling hash, shared by accounts and devices | | standalone_forwarding | boolean | Whether installed desktop web apps forward to the new origin once their data has moved | -`enabled` is the instance-wide switch. While it is false, no client starts a migration and a client that already migrated stops forwarding from the legacy origin. +`enabled` is the instance-wide switch. While it is false, no client starts a migration and a client that already migrated stops forwarding from the legacy origin. No [passkey update](/http-api/users/mfa/#passkey-updates) opens, and the [passkey bridge](/http-api/authentication/#passkey-bridge) keeps working for people already on a new origin. A logged-out device draws its own random ID once and keeps it. The device moves when its bucket over that ID and `rollout_salt` falls below `anonymous_rollout_basis_points`. Signed-in accounts use the [domain migration assignment](/http-api/experiments/#domain-migration-assignment-object) instead. diff --git a/fluxer_docs/src/content/docs/http-api/users/mfa.mdx b/fluxer_docs/src/content/docs/http-api/users/mfa.mdx index a79943c29..fb151e189 100644 --- a/fluxer_docs/src/content/docs/http-api/users/mfa.mdx +++ b/fluxer_docs/src/content/docs/http-api/users/mfa.mdx @@ -1,7 +1,7 @@ --- # SPDX-License-Identifier: AGPL-3.0-or-later title: Multi-factor authentication -description: TOTP, backup codes, WebAuthn credentials, and sudo mode. +description: TOTP, backup codes, WebAuthn credentials, passkey updates, and sudo mode. --- import RouteHeader from '@/components/RouteHeader.astro'; @@ -13,7 +13,7 @@ Registering a WebAuthn credential does not make passkeys a second factor. A regi Every route here requires a non-bot user session. Fluxer rejects an account in suspicious activity state with 403 `ACCOUNT_SUSPICIOUS_ACTIVITY`, including on the sudo routes. :::caution[A challenge is one-use and context-bound] -Fluxer consumes a backup code, a WebAuthn registration challenge, and a WebAuthn sudo challenge on first use. A challenge is bound to the user it was issued to and to the operation it was issued for: registration, sudo, MFA login, or discoverable login. It expires after five minutes, so a registration challenge cannot be redeemed as a sudo assertion. +Fluxer consumes a backup code, a WebAuthn registration challenge, and a WebAuthn sudo challenge on first use. A challenge is bound to the user it was issued to and to the operation it was issued for. The operations are registration, sudo, MFA login, discoverable login, the passkey bridge, and the passkey update. It expires after five minutes, so a registration challenge cannot be redeemed as a sudo assertion. ::: ## TOTP parameters @@ -208,9 +208,9 @@ The backup codes and the proof a verified challenge returns. ## WebAuthn credential object -An account holds at most 10 WebAuthn credentials. Both [Create WebAuthn registration options](#create-webauthn-registration-options) and [Register WebAuthn credential](#register-webauthn-credential) enforce this limit. +An account holds at most 10 WebAuthn credentials, not counting [replaced passkeys](#replaced-passkeys). Both [Create WebAuthn registration options](#create-webauthn-registration-options) and [Register WebAuthn credential](#register-webauthn-credential) enforce this limit. -Fluxer verifies every assertion against the relying party identifier and the allowed origins configured for the instance. Fluxer rejects an assertion whose reported signature counter is not greater than the stored counter. The exception is a stored and a reported counter of zero, which is how an authenticator without a counter appears. +Fluxer verifies every assertion against the domain its challenge was issued for, chosen by [passkey domain selection](#passkey-domain-selection), and against the allowed origins configured for the instance. A passkey bridge assertion and a passkey update registration accept only the origin the ceremony runs on. Fluxer rejects an assertion whose reported signature counter is not greater than the stored counter. The exception is a stored and a reported counter of zero, which is how an authenticator without a counter appears. ### Structure @@ -220,11 +220,74 @@ Fluxer verifies every assertion against the relying party identifier and the all | name | string | User-assigned credential name (1-100 characters) | | created_at | ISO8601 timestamp | The time [Register WebAuthn credential](#register-webauthn-credential) stored the credential | | last_used_at1 | ?ISO8601 timestamp | Most recent successful authentication | +| rp_id2 | string | The domain the passkey was created for | 1 Null until the credential completes a login, MFA, or sudo assertion for the first time +2 The instance's `FLUXER_PASSKEY_RP_ID` for every passkey except one created on a new origin of the official instance, which reports `fluxer.com`. See [passkey domain selection](#passkey-domain-selection) + Fluxer never returns the credential's public key, signature counter, or reported transports. +## Passkey domain selection + +A passkey works only under the domain it was created for, its relying party identifier. Most instances have one, `FLUXER_PASSKEY_RP_ID`, and every passkey uses it. The official instance has two while its web client moves from `web.fluxer.app` to `fluxer.com`, as the [passkey bridge](/http-api/authentication/#passkey-bridge) describes. There, a request whose `Origin` is `https://fluxer.com` or `https://canary.fluxer.com` is a new-origin request, and the domain follows the table below. A request with any other `Origin`, or with none as from the mobile apps, keeps `fluxer.app` wherever the account can use it. + +| Operation | New-origin request | Any other request | +| --- | --- | --- | +| [Create WebAuthn registration options](#create-webauthn-registration-options) | A new `fluxer.com` passkey | A new `fluxer.app` passkey | +| [Get discoverable WebAuthn options](/http-api/authentication/#get-discoverable-webauthn-options) | Any `fluxer.com` passkey | Any `fluxer.app` passkey, replaced ones included | +| [Get WebAuthn MFA options](/http-api/authentication/#get-webauthn-mfa-options) | The `fluxer.com` passkeys, else the `fluxer.app` ones | The `fluxer.app` passkeys with replaced ones, else the `fluxer.com` ones | +| [Create sudo WebAuthn authentication options](#create-sudo-webauthn-authentication-options) | The `fluxer.com` passkeys, else the `fluxer.app` ones | The `fluxer.app` passkeys with replaced ones, else the `fluxer.com` ones | + +The options name the chosen domain in `rpId` and list only the chosen passkeys. An assertion from any other credential returns 401 `PASSKEY_AUTHENTICATION_FAILED`. A page on a new origin cannot run options for `fluxer.app` itself, so the official web client runs them through the passkey bridge. + +## Replaced passkeys + +A [passkey update](#passkey-updates) keeps the old `fluxer.app` credential as a replaced passkey, so the mobile apps and `web.fluxer.app` still accept it. A replaced passkey appears in no list, no [Ready](/gateway/events/#ready) payload, and no [WebAuthn Credentials Update](/gateway/events/#webauthn-credentials-update), and it does not count toward the 10-credential limit. + +A replaced passkey works only on requests that are not new-origin requests. It never works on a new origin or through the passkey bridge. Renaming or deleting it by ID returns 404 `UNKNOWN_WEBAUTHN_CREDENTIAL`. Deleting the passkey that replaced it deletes it too, and deleting the account's last listed passkey deletes every replaced one. + +## Passkey updates + +A passkey update swaps one `fluxer.app` passkey for a `fluxer.com` passkey with the same name. Fluxer opens one only when a [passkey bridge](/http-api/authentication/#passkey-bridge) redemption completes from a new origin while the instance-wide [domain migration switch](/http-api/instance/#domain-migration-object) is on. Nothing else opens one. + +An open update belongs to one session and names the passkey the ceremony used. It lasts five minutes, and a later redemption on the same session replaces it. + +The open update stands in for sudo mode on the update routes, because it exists only after this session used the old passkey within the last five minutes. It allows one action. [Complete passkey update](#complete-passkey-update) registers the new passkey. When the authenticator already holds a `fluxer.com` passkey for the account, registration fails on `excludeCredentials` and the old passkey stays listed, so the person can remove it themselves. + +## Passkey update object + +### Structure + +| Field | Type | Description | +| --- | --- | --- | +| pending1 | ?[pending passkey update](#pending-passkey-update-object) object | The passkey this session can update | + +1 Null when the session has no open update, and when the passkey it names was deleted or replaced since + +## Pending passkey update object + +### Structure + +| Field | Type | Description | +| --- | --- | --- | +| credential_id | string | Base64url ID of the passkey to update | +| name | string | The passkey's name, which the new passkey takes | +| cross_device | boolean | Whether the ceremony used a phone or security key rather than the device itself | + +## Passkey bridge sudo redemption object + +The result of one redeemed `sudo` [passkey bridge](/http-api/authentication/#passkey-bridge) ceremony. + +### Structure + +| Field | Type | Description | +| --- | --- | --- | +| status | string | The ceremony state, either `completed` or `cancelled` | +| sudo_token?1 | string | A sudo mode token, sent later in the `X-Fluxer-Sudo-Mode-JWT` request header | + +1 Present only when the status is `completed` + ## WebAuthn credential descriptor object ### Structure @@ -341,7 +404,7 @@ Every operation that issues a WebAuthn authentication challenge returns this obj | --- | --- | --- | | challenge1 | string | Base64url one-use challenge | | timeout2 | integer | Authenticator operation timeout in milliseconds | -| rpId | string | Relying party identifier configured for the instance | +| rpId | string | Relying party identifier chosen by [passkey domain selection](#passkey-domain-selection) | | allowCredentials?3 | array[[WebAuthn credential descriptor](#webauthn-credential-descriptor-object) object] | Credentials accepted for this operation | | userVerification4 | string | User verification requirement, one of `discouraged`, `preferred`, or `required` | @@ -349,9 +412,9 @@ Every operation that issues a WebAuthn authentication challenge returns this obj 2 Every operation emits the fixed value `60000`, a standard PublicKeyCredential request option -3 Sudo options list every credential registered to the account. The field is absent only on the discoverable login route +3 Sudo and MFA login options list the passkeys [passkey domain selection](#passkey-domain-selection) chooses, and passkey bridge options list the account's `fluxer.app` passkeys. The field is absent on the discoverable login route and on passkey bridge options for sign-in -4 Sudo options and MFA login completion request `discouraged`. Discoverable login requests and verifies `required` +4 Sudo options, MFA login completion, and passkey bridge options for two-factor sign-in and sudo request `discouraged`. Discoverable login and passkey bridge options for sign-in request and verify `required` Fluxer emits no other PublicKeyCredential request options member, so `hints` and `extensions` never appear on this object. @@ -376,7 +439,7 @@ Fluxer emits no other PublicKeyCredential request options member, so `hints` and 2 Every registration emits the fixed value `60000` -3 Holds every credential already registered to the account, so an authenticator cannot enrol the same credential twice. It is an empty array when the account holds none +3 Holds every credential already stored for the account, replaced passkeys included, so an authenticator cannot enrol the same credential twice. It is an empty array when the account holds none. Passkey update options hold only the account's listed `fluxer.com` passkeys 4 Fluxer requests a preferred discoverable credential and preferred user verification, and requires neither, so `requireResidentKey` is `false` @@ -384,7 +447,7 @@ Fluxer emits no other PublicKeyCredential request options member, so `hints` and 6 Always present with `credProps` set to `true`, the only extension Fluxer requests -7 Always an empty array +7 An empty array, except on [passkey update](#passkey-updates) options for a passkey last used from a phone or security key, where it is `hybrid` then `security-key` ## WebAuthn relying party object @@ -393,7 +456,7 @@ Fluxer emits no other PublicKeyCredential request options member, so `hints` and | Field | Type | Description | | --- | --- | --- | | name | string | Relying party display name configured for the instance | -| id | string | Relying party identifier configured for the instance | +| id | string | Relying party identifier chosen by [passkey domain selection](#passkey-domain-selection) | ## WebAuthn registration user object @@ -724,7 +787,7 @@ The previous set is replaced with 10 new codes. A failure can leave the old code -Returns an array of [WebAuthn credential](#webauthn-credential-object) objects registered to the current account, or an empty array when none exist. Sudo mode is not required. +Returns an array of [WebAuthn credential](#webauthn-credential-object) objects registered to the current account, or an empty array when none exist. [Replaced passkeys](#replaced-passkeys) are left out. Sudo mode is not required. ### Response @@ -740,7 +803,7 @@ Returns an array of [WebAuthn credential](#webauthn-credential-object) objects r -Creates a one-use registration challenge and returns a [WebAuthn registration options](#webauthn-registration-options-object) object. [Sudo mode](#sudo-mode) is required. +Creates a one-use registration challenge and returns a [WebAuthn registration options](#webauthn-registration-options-object) object for the domain [passkey domain selection](#passkey-domain-selection) chooses. [Sudo mode](#sudo-mode) is required. This operation sets no `X-Fluxer-Sudo-Mode-JWT` response header. @@ -777,7 +840,7 @@ Consumes a registration challenge, adds one WebAuthn credential to the current a Registration changes no [authenticator type](/http-api/users/#authenticator-types). The credential answers a sudo mode challenge and a passwordless login straight away, and passkeys become a second factor at password login only through [Set WebAuthn two-factor authentication](#set-webauthn-two-factor-authentication). -The account needs a verified email and fewer than 10 registered credentials. This route accepts no sudo verification fields of its own. Fluxer verifies the attestation against the instance relying party identifier and its allowed origins, and does not require user verification. +The account needs a verified email and fewer than 10 registered credentials. This route accepts no sudo verification fields of its own. Fluxer verifies the attestation against the domain the challenge was issued for and the instance's allowed origins, and does not require user verification. The credential keeps that domain. ### JSON body @@ -837,7 +900,7 @@ The body extends the [sudo verification object](#sudo-verification-object) with | --- | --- | --- | | 204 | empty | Credential was renamed | | 403 | [error response](/http-api/#error-response) | Sudo mode was not proven and the request returns `SUDO_MODE_REQUIRED` | -| 404 | [error response](/http-api/#error-response) | The credential is not registered to the current account, returning `UNKNOWN_WEBAUTHN_CREDENTIAL` | +| 404 | [error response](/http-api/#error-response) | The credential is not registered to the current account or is a [replaced passkey](#replaced-passkeys), returning `UNKNOWN_WEBAUTHN_CREDENTIAL` | ### Side effects @@ -875,11 +938,11 @@ Deleting the account's last WebAuthn credential removes the WebAuthn authenticat | --- | --- | --- | | 204 | empty | Credential was deleted | | 403 | [error response](/http-api/#error-response) | Sudo mode was not proven and the request returns `SUDO_MODE_REQUIRED` | -| 404 | [error response](/http-api/#error-response) | The credential is not registered to the current account, returning `UNKNOWN_WEBAUTHN_CREDENTIAL` | +| 404 | [error response](/http-api/#error-response) | The credential is not registered to the current account or is a [replaced passkey](#replaced-passkeys), returning `UNKNOWN_WEBAUTHN_CREDENTIAL` | ### Side effects -The credential is deleted. When it was the final one and the account had passkeys enabled as a second factor, the WebAuthn authenticator type is removed from the account and from every bot account owned by the user. +The credential is deleted, together with the [replaced passkeys](#replaced-passkeys) it took over from. When no listed credential remains, every replaced passkey the account still holds is deleted as well. When it was the final one and the account had passkeys enabled as a second factor, the WebAuthn authenticator type is removed from the account and from every bot account owned by the user. [WebAuthn Credentials Update](/gateway/events/#webauthn-credentials-update) reaches the user's sessions with the remaining credential summaries. When the authenticator types changed, [User Update](/gateway/events/#user-update) also reaches the user and each affected owned bot. @@ -887,6 +950,86 @@ The credential is deleted. When it was the final one and the account had passkey 10 requests per minute for each authenticated user, on the `mfa:webauthn:delete` bucket. +## Get passkey update + + + +Returns a [passkey update](#passkey-update-object) object for the current session. Sudo mode is not required, and any `Origin` is accepted. + +### Response + +| Status | Body | Condition | +| --- | --- | --- | +| 200 | [passkey update](#passkey-update-object) object | The session's update state was returned | + +### Side effects + +An open update whose passkey was deleted or replaced since is discarded. No Gateway Dispatch is emitted. + +### Rate limit + +20 requests per minute for each authenticated user, on the `mfa:webauthn:migration` bucket, shared with the other passkey update routes. + +## Create passkey update registration options + + + +Creates a one-use registration challenge for the `fluxer.com` passkey that replaces the session's open [passkey update](#passkey-updates). Returns a [WebAuthn registration options](#webauthn-registration-options-object) object. + +The request has no body. It needs a new-origin request and an open update on this session, and otherwise returns 404 `UNKNOWN_PASSKEY_MIGRATION`. Sudo mode, a verified email, and room under the credential limit are not required. + +`excludeCredentials` lists the account's `fluxer.com` passkeys. When the update's `cross_device` is true, `hints` is `hybrid` then `security-key`, so the browser offers the phone or key used a moment ago. + +### Response + +| Status | Body | Condition | +| --- | --- | --- | +| 200 | [WebAuthn registration options](#webauthn-registration-options-object) object | Challenge and registration options were issued | +| 404 | [error response](/http-api/#error-response) | The request is not from a new origin or the session has no open update, returning `UNKNOWN_PASSKEY_MIGRATION` | + +### Side effects + +Fluxer issues a registration challenge for the current user, bound to the passkey update. It expires after five minutes, can be redeemed once, and no other WebAuthn route accepts it. The update stays open. + +### Rate limit + +20 requests per minute for each authenticated user, on the shared `mfa:webauthn:migration` bucket. + +## Complete passkey update + + + +Registers the `fluxer.com` passkey that replaces the session's open [passkey update](#passkey-updates) and returns 204 with an empty body. Emits a [WebAuthn Credentials Update](/gateway/events/#webauthn-credentials-update) Gateway event. + +### JSON body + +| Field | Type | Description | +| --- | --- | --- | +| response | [WebAuthn registration response](#webauthn-registration-response-object) object | Authenticator response for the update challenge | +| challenge | string | The challenge from [create passkey update registration options](#create-passkey-update-registration-options) (1-1024 characters) | + +The request needs a new-origin request and an open update on this session, and otherwise returns 404 `UNKNOWN_PASSKEY_MIGRATION`. Fluxer verifies the attestation for `fluxer.com` and accepts only the request's own `Origin` in its client data. + +A failed verification returns the codes of [register WebAuthn credential](#register-webauthn-credential) and leaves the update open. It consumes the challenge, so fetch new options before trying again. An update that another request settled first, and a passkey that was deleted or replaced since, return 404 `UNKNOWN_PASSKEY_MIGRATION`. + +### Response + +| Status | Body | Condition | +| --- | --- | --- | +| 204 | empty | The passkey was updated | +| 400 | [error response](/http-api/#error-response) | Verification failed, with a code from [register WebAuthn credential](#register-webauthn-credential) | +| 404 | [error response](/http-api/#error-response) | No open update applies, returning `UNKNOWN_PASSKEY_MIGRATION` | + +### Side effects + +Fluxer closes the update, adds the new passkey under the old one's name, and makes the old one a [replaced passkey](#replaced-passkeys). No authenticator type changes. + +[WebAuthn Credentials Update](/gateway/events/#webauthn-credentials-update) reaches the user's sessions with the complete current credential summaries. + +### Rate limit + +20 requests per minute for each authenticated user, on the shared `mfa:webauthn:migration` bucket. + ## Set WebAuthn two-factor authentication @@ -958,9 +1101,9 @@ Returns a [sudo MFA methods](#sudo-mfa-methods-object) object describing which s -Creates a one-use sudo challenge and returns a [WebAuthn authentication options](#webauthn-authentication-options-object) object listing every credential registered to the current account. +Creates a one-use sudo challenge and returns a [WebAuthn authentication options](#webauthn-authentication-options-object) object listing the passkeys [passkey domain selection](#passkey-domain-selection) chooses. -The account needs at least one registered WebAuthn credential. Sudo mode is not required to obtain the challenge. +The account needs at least one credential in the chosen group. Sudo mode is not required to obtain the challenge. ### Response @@ -976,3 +1119,74 @@ Fluxer issues a sudo challenge for the current user. It expires after five minut ### Rate limit 10 requests per minute for each authenticated user, on the `sudo:webauthn:options` bucket. + +## Start passkey bridge sudo verification + + + +Starts a `sudo` [passkey bridge](/http-api/authentication/#passkey-bridge) ceremony for the current account. Sudo mode is not required. Returns a [passkey bridge start](/http-api/authentication/#passkey-bridge-start-object) object. + +### JSON body + +| Field | Type | Description | +| --- | --- | --- | +| runner | string | Where the ceremony runs, either `page` or `native` | +| nonce_hash | string | The SHA-256 digest of the nonce the new origin keeps, as 64 lowercase hex characters | + +The request MUST send an `Origin` header of `https://fluxer.com` or `https://canary.fluxer.com`. Any other `Origin`, none, or a self-hosted instance returns 403 `INVALID_API_ORIGIN`. An account with no passkey listed for `fluxer.app` returns 400 `NO_PASSKEYS_REGISTERED`. + +### Response + +| Status | Body | Condition | +| --- | --- | --- | +| 200 | [passkey bridge start](/http-api/authentication/#passkey-bridge-start-object) object | The ceremony was started | +| 400 | [error response](/http-api/#error-response) | The body is invalid, or the account has no passkey for `fluxer.app` | +| 403 | [error response](/http-api/#error-response) | The `Origin` is refused, returning `INVALID_API_ORIGIN` | + +### Side effects + +Fluxer stores the ceremony for 10 minutes. It changes no account state. No Gateway Dispatch is emitted. + +### Rate limit + +10 requests per minute for each authenticated user, on the `mfa:passkey_bridge:start` bucket. + +## Redeem passkey bridge sudo verification + + + +Redeems a finished `sudo` [passkey bridge](/http-api/authentication/#passkey-bridge) ceremony once for a sudo mode token. Returns a [passkey bridge sudo redemption](#passkey-bridge-sudo-redemption-object) object. + +### Path parameters + +| Field | Type | Description | +| --- | --- | --- | +| ceremony_id | string | The identifier from the start response, 43 base64url characters | + +### JSON body + +| Field | Type | Description | +| --- | --- | --- | +| nonce | string | The nonce whose digest started the ceremony, as base64url, 16 to 256 characters | +| completion_code | string | The completion code from the return fragment or the finish response, 43 base64url characters | + +The `Origin` MUST be the new origin that started the ceremony, or the request returns 403 `INVALID_API_ORIGIN`. A pending ceremony, a sign-in ceremony, and a ceremony another account started return 404 `UNKNOWN_PASSKEY_BRIDGE` and stay in place, as does an unknown or expired identifier. A wrong nonce or completion code deletes the ceremony and returns 400 `INVALID_PASSKEY_BRIDGE_NONCE`. + +A cancelled ceremony returns `cancelled`. A completed one returns a token that works like one [sudo mode](#sudo-mode) issues, for five minutes and for this account. The response sets no `X-Fluxer-Sudo-Mode-JWT` header, so the client sends the token in that header itself. + +### Response + +| Status | Body | Condition | +| --- | --- | --- | +| 200 | [passkey bridge sudo redemption](#passkey-bridge-sudo-redemption-object) object | The ceremony was redeemed | +| 400 | [error response](/http-api/#error-response) | The body or ceremony ID is invalid, or a secret does not match, returning `INVALID_PASSKEY_BRIDGE_NONCE` | +| 403 | [error response](/http-api/#error-response) | The `Origin` is refused, returning `INVALID_API_ORIGIN` | +| 404 | [error response](/http-api/#error-response) | No redeemable sudo ceremony of this account has this identifier, returning `UNKNOWN_PASSKEY_BRIDGE` | + +### Side effects + +A redemption that gets past the secret check deletes the ceremony. When the request comes from a new origin and the domain migration switch is on, Fluxer opens a [passkey update](#passkey-updates) for the calling session. No Gateway Dispatch is emitted. + +### Rate limit + +60 requests per minute for each authenticated user, on the `mfa:passkey_bridge:redeem` bucket. diff --git a/fluxer_docs/src/content/docs/operator/upgrading.mdx b/fluxer_docs/src/content/docs/operator/upgrading.mdx index 20241d997..1e12abe98 100644 --- a/fluxer_docs/src/content/docs/operator/upgrading.mdx +++ b/fluxer_docs/src/content/docs/operator/upgrading.mdx @@ -194,6 +194,23 @@ Within minutes of the upgrade, `worker` starts deleting existing data that is pa Instances on Cassandra already behave this way. +## Add the passkey columns on Cassandra + +An instance on the Postgres backend needs nothing here. An instance on Cassandra or Scylla adds two columns to `webauthn_credentials` before it starts the new `api` and `worker` images. Replace `fluxer` with the value of `FLUXER_CASSANDRA_KEYSPACE`. + +```sql +ALTER TABLE fluxer.webauthn_credentials ADD rp_id text; +ALTER TABLE fluxer.webauthn_credentials ADD superseded_by text; +``` + +Both columns start empty on every row, and existing passkeys keep working as before. Wait until every node reports the same schema version, as `nodetool describecluster` shows, then upgrade. + +:::danger[Upgrading without the columns breaks every connection] +The new release reads both columns whenever it loads passkeys, and every Gateway connection loads them. Without the columns no client finishes connecting, and passkey sign-in fails. +::: + +An earlier release ignores the columns, so a rollback leaves them in place. + ## What the backup covers Each upgrade writes one record directory, named `record-` and a UTC stamp, under `backups` or wherever `--backup-dir` points. It holds: diff --git a/fluxer_docs/src/content/docs/topics/rate-limits.md b/fluxer_docs/src/content/docs/topics/rate-limits.md index fa4a8fac0..0e9d7cac6 100644 --- a/fluxer_docs/src/content/docs/topics/rate-limits.md +++ b/fluxer_docs/src/content/docs/topics/rate-limits.md @@ -181,13 +181,13 @@ The Resend IP authorisation cooldown has no `X-RateLimit-*` header. It has a `Re | [Modify current guild member](/http-api/guild-members/#modify-current-guild-member) | 25 per 30 minutes on the guild pronouns, when the submitted value differs | `PRONOUNS_CHANGED_TOO_MANY_TIMES` | | [Modify current guild member](/http-api/guild-members/#modify-current-guild-member) | 25 per 30 minutes on the guild accent colour, when the submitted value differs | `ACCENT_COLOR_CHANGED_TOO_MANY_TIMES` | | [Modify voice activity sharing](/http-api/users/settings/#modify-voice-activity-sharing) | 1 per 24 hours on the sharing default | `VOICE_ACTIVITY_SHARING_ON_COOLDOWN` | -| [Complete login with TOTP](/http-api/authentication/#complete-login-with-totp) and [Complete login with WebAuthn MFA](/http-api/authentication/#complete-login-with-webauthn-mfa) | 10 multi-factor attempts per 15 minutes | `INVALID_CODE` | -| [Complete login with TOTP](/http-api/authentication/#complete-login-with-totp) and [Complete login with WebAuthn MFA](/http-api/authentication/#complete-login-with-webauthn-mfa) | 5 multi-factor attempts per 5 minutes on one MFA ticket | `INVALID_CODE` | -| [Sudo mode](/http-api/users/mfa/#sudo-mode) with the `totp` method | 10 multi-factor attempts per 15 minutes | `INVALID_MFA_CODE` | +| [Complete login with TOTP](/http-api/authentication/#complete-login-with-totp), [Complete login with WebAuthn MFA](/http-api/authentication/#complete-login-with-webauthn-mfa), and [Complete passkey bridge](/http-api/authentication/#complete-passkey-bridge) for `login_mfa` | 10 multi-factor attempts per 15 minutes | `INVALID_CODE` | +| [Complete login with TOTP](/http-api/authentication/#complete-login-with-totp), [Complete login with WebAuthn MFA](/http-api/authentication/#complete-login-with-webauthn-mfa), and [Complete passkey bridge](/http-api/authentication/#complete-passkey-bridge) for `login_mfa` | 5 multi-factor attempts per 5 minutes on one MFA ticket | `INVALID_CODE` | +| [Sudo mode](/http-api/users/mfa/#sudo-mode) with the `totp` method, and [Complete passkey bridge](/http-api/authentication/#complete-passkey-bridge) for `sudo` | 10 multi-factor attempts per 15 minutes | `INVALID_MFA_CODE` | Every Modify current user allowance is keyed by the authenticated account, and the bot tag allowance by the bot account, so an owner changing a bot's tag draws on the bot's allowance. The guild member allowances are keyed by the guild and the member together, and one account holds a separate allowance in each guild. The login allowances are keyed by the account and by the MFA ticket respectively, and the sudo allowance by the account. -Fluxer consumes every multi-factor allowance before it checks the code, so a correct code drawn against an exhausted allowance is reported exactly like a wrong one. A correct code clears the counter. The ticket allowance also destroys the MFA ticket as it denies, and the client restarts from [Log in with a password](/http-api/authentication/#log-in-with-a-password). +Fluxer consumes every multi-factor allowance before it checks the code, so a correct code drawn against an exhausted allowance is reported exactly like a wrong one. A correct code clears the counter. A completed passkey bridge ceremony clears nothing, and redeeming a `login_mfa` ceremony clears the login counters. The ticket allowance also destroys the MFA ticket as it denies, and the client restarts from [Log in with a password](/http-api/authentication/#log-in-with-a-password). ### Allowances answering neither shape diff --git a/packages/constants/src/ApiErrorCodes.ts b/packages/constants/src/ApiErrorCodes.ts index 6b4a39742..7abf66a84 100644 --- a/packages/constants/src/ApiErrorCodes.ts +++ b/packages/constants/src/ApiErrorCodes.ts @@ -106,6 +106,7 @@ export const APIErrorCodes = { INVALID_FORM_BODY: 'INVALID_FORM_BODY', INVALID_HANDOFF_CODE: 'INVALID_HANDOFF_CODE', INVALID_ORIGIN_HANDOFF_NONCE: 'INVALID_ORIGIN_HANDOFF_NONCE', + INVALID_PASSKEY_BRIDGE_NONCE: 'INVALID_PASSKEY_BRIDGE_NONCE', INVALID_PERMISSIONS_INTEGER: 'INVALID_PERMISSIONS_INTEGER', INVALID_PERMISSIONS_NEGATIVE: 'INVALID_PERMISSIONS_NEGATIVE', INVALID_PHONE_NUMBER: 'INVALID_PHONE_NUMBER', @@ -246,6 +247,8 @@ export const APIErrorCodes = { UNKNOWN_MEMBER: 'UNKNOWN_MEMBER', UNKNOWN_MESSAGE: 'UNKNOWN_MESSAGE', UNKNOWN_ORIGIN_HANDOFF: 'UNKNOWN_ORIGIN_HANDOFF', + UNKNOWN_PASSKEY_BRIDGE: 'UNKNOWN_PASSKEY_BRIDGE', + UNKNOWN_PASSKEY_MIGRATION: 'UNKNOWN_PASSKEY_MIGRATION', UNKNOWN_REPORT: 'UNKNOWN_REPORT', UNKNOWN_ROLE: 'UNKNOWN_ROLE', UNKNOWN_STICKER: 'UNKNOWN_STICKER', diff --git a/packages/constants/src/PasskeyConstants.ts b/packages/constants/src/PasskeyConstants.ts new file mode 100644 index 000000000..5f877a726 --- /dev/null +++ b/packages/constants/src/PasskeyConstants.ts @@ -0,0 +1,9 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +export const PASSKEY_MIGRATION_RP_ID = 'fluxer.com'; + +export const PASSKEY_BRIDGE_PATH = '/passkey-bridge'; + +export const PASSKEY_BRIDGE_RETURN_FRAGMENT_KEY = 'passkey-bridge'; + +export const PASSKEY_BRIDGE_CHANNEL = 'fluxer:passkey-bridge'; diff --git a/packages/errors/src/domains/auth/InvalidPasskeyBridgeNonceError.ts b/packages/errors/src/domains/auth/InvalidPasskeyBridgeNonceError.ts new file mode 100644 index 000000000..f6384d030 --- /dev/null +++ b/packages/errors/src/domains/auth/InvalidPasskeyBridgeNonceError.ts @@ -0,0 +1,10 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {APIErrorCodes} from '@fluxer/constants/src/ApiErrorCodes'; +import {BadRequestError} from '@fluxer/errors/src/domains/core/BadRequestError'; + +export class InvalidPasskeyBridgeNonceError extends BadRequestError { + constructor() { + super({code: APIErrorCodes.INVALID_PASSKEY_BRIDGE_NONCE}); + } +} diff --git a/packages/errors/src/domains/auth/UnknownPasskeyBridgeError.ts b/packages/errors/src/domains/auth/UnknownPasskeyBridgeError.ts new file mode 100644 index 000000000..be6c2c03d --- /dev/null +++ b/packages/errors/src/domains/auth/UnknownPasskeyBridgeError.ts @@ -0,0 +1,10 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {APIErrorCodes} from '@fluxer/constants/src/ApiErrorCodes'; +import {NotFoundError} from '@fluxer/errors/src/domains/core/NotFoundError'; + +export class UnknownPasskeyBridgeError extends NotFoundError { + constructor() { + super({code: APIErrorCodes.UNKNOWN_PASSKEY_BRIDGE}); + } +} diff --git a/packages/errors/src/domains/auth/UnknownPasskeyMigrationError.ts b/packages/errors/src/domains/auth/UnknownPasskeyMigrationError.ts new file mode 100644 index 000000000..fea84b8dc --- /dev/null +++ b/packages/errors/src/domains/auth/UnknownPasskeyMigrationError.ts @@ -0,0 +1,10 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {APIErrorCodes} from '@fluxer/constants/src/ApiErrorCodes'; +import {NotFoundError} from '@fluxer/errors/src/domains/core/NotFoundError'; + +export class UnknownPasskeyMigrationError extends NotFoundError { + constructor() { + super({code: APIErrorCodes.UNKNOWN_PASSKEY_MIGRATION}); + } +} diff --git a/packages/errors/src/i18n/ErrorCodeMappings.ts b/packages/errors/src/i18n/ErrorCodeMappings.ts index a6be3d893..92e9f659b 100644 --- a/packages/errors/src/i18n/ErrorCodeMappings.ts +++ b/packages/errors/src/i18n/ErrorCodeMappings.ts @@ -133,6 +133,7 @@ export const ErrorCodeToI18nKey = { 'auth_and_oauth.invalid_or_expired_authorization_ticket', [ValidationErrorCodes.INVALID_OR_EXPIRED_SSO_STATE]: 'auth_and_oauth.invalid_or_expired_sso_state', [APIErrorCodes.INVALID_ORIGIN_HANDOFF_NONCE]: 'auth_and_oauth.origin_handoff_nonce_invalid', + [APIErrorCodes.INVALID_PASSKEY_BRIDGE_NONCE]: 'auth_and_oauth.passkey_bridge_nonce_invalid', [APIErrorCodes.INVALID_PERMISSIONS_INTEGER]: 'misc.invalid_permissions_integer', [APIErrorCodes.INVALID_PERMISSIONS_NEGATIVE]: 'misc.invalid_permissions_negative', [APIErrorCodes.INVALID_PHONE_NUMBER]: 'phone.invalid_number', @@ -297,6 +298,8 @@ export const ErrorCodeToI18nKey = { [APIErrorCodes.UNKNOWN_MEMBER]: 'unknown_entities.unknown_member', [APIErrorCodes.UNKNOWN_MESSAGE]: 'unknown_entities.unknown_message', [APIErrorCodes.UNKNOWN_ORIGIN_HANDOFF]: 'auth_and_oauth.unknown_origin_handoff', + [APIErrorCodes.UNKNOWN_PASSKEY_BRIDGE]: 'auth_and_oauth.unknown_passkey_bridge', + [APIErrorCodes.UNKNOWN_PASSKEY_MIGRATION]: 'auth_and_oauth.unknown_passkey_migration', [APIErrorCodes.UNKNOWN_REPORT]: 'moderation_and_reports.unknown_report', [APIErrorCodes.UNKNOWN_ROLE]: 'unknown_entities.unknown_role', [APIErrorCodes.UNKNOWN_STICKER]: 'stickers_and_emojis.unknown_sticker', diff --git a/packages/errors/src/i18n/ErrorI18nMessages.ts b/packages/errors/src/i18n/ErrorI18nMessages.ts index 25e90ac79..f87e65358 100644 --- a/packages/errors/src/i18n/ErrorI18nMessages.ts +++ b/packages/errors/src/i18n/ErrorI18nMessages.ts @@ -119,6 +119,7 @@ export const ERROR_I18N_MESSAGES = { 'auth_and_oauth.missing_authorization': 'Missing or invalid authorization header.', 'auth_and_oauth.must_start_session_before_sending_messages': 'You must start a session before sending messages.', 'auth_and_oauth.origin_handoff_nonce_invalid': "This sign-in transfer doesn't match the one you started.", + 'auth_and_oauth.passkey_bridge_nonce_invalid': 'This passkey request could not be confirmed. Try again.', 'auth_and_oauth.registration_closed': 'Registration is closed on this instance.', 'auth_and_oauth.registration_pending_approval': 'This registration is waiting for admin approval.', 'auth_and_oauth.registration_rejected': 'This registration request was rejected.', @@ -134,6 +135,8 @@ export const ERROR_I18N_MESSAGES = { 'auth_and_oauth.sudo_mode_required': 'Sudo mode is required.', 'auth_and_oauth.unknown_application': 'Unknown application.', 'auth_and_oauth.unknown_origin_handoff': 'This sign-in transfer has expired or was already used.', + 'auth_and_oauth.unknown_passkey_bridge': 'This passkey request has expired. Try again.', + 'auth_and_oauth.unknown_passkey_migration': 'There is no passkey to update right now.', 'auth_and_registration.password_is_too_common': 'Your password is too common. Please choose a less predictable password.', 'auth_and_registration.password_not_set': "Password isn't set.", diff --git a/packages/errors/src/i18n/locales/ar.ts b/packages/errors/src/i18n/locales/ar.ts index 45633ff98..142dd64af 100644 --- a/packages/errors/src/i18n/locales/ar.ts +++ b/packages/errors/src/i18n/locales/ar.ts @@ -102,6 +102,7 @@ const ERROR_I18N_AR_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "رأس التفويض مفقود أو غير صالح.", "auth_and_oauth.must_start_session_before_sending_messages": "يجب عليك بدء جلسة قبل إرسال الرسائل.", "auth_and_oauth.origin_handoff_nonce_invalid": "عملية نقل تسجيل الدخول هذه لا تطابق العملية التي بدأتها.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "تعذّر تأكيد طلب مفتاح المرور هذا. حاول مرة أخرى.", "auth_and_oauth.registration_closed": "التسجيل مغلق في هذا المثيل.", "auth_and_oauth.registration_pending_approval": "هذا التسجيل في انتظار موافقة المسؤول.", "auth_and_oauth.registration_rejected": "تم رفض طلب التسجيل هذا.", @@ -115,6 +116,8 @@ const ERROR_I18N_AR_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "وضع Sudo مطلوب.", "auth_and_oauth.unknown_application": "تطبيق غير معروف.", "auth_and_oauth.unknown_origin_handoff": "انتهت صلاحية عملية نقل تسجيل الدخول هذه أو تم استخدامها بالفعل.", + "auth_and_oauth.unknown_passkey_bridge": "انتهت صلاحية طلب مفتاح المرور هذا. حاول مرة أخرى.", + "auth_and_oauth.unknown_passkey_migration": "لا يوجد مفتاح مرور لتحديثه الآن.", "auth_and_registration.password_is_too_common": "كلمة مرورك شائعة جدًا. اختر كلمة مرور يصعب تخمينها.", "auth_and_registration.password_not_set": "لم تُعيّن كلمة المرور.", "bots.bot_discriminator_cannot_be_changed": "لا يمكن تغيير مميّز البوت.", diff --git a/packages/errors/src/i18n/locales/bg.ts b/packages/errors/src/i18n/locales/bg.ts index 1e0ed22c0..c055ebc6e 100644 --- a/packages/errors/src/i18n/locales/bg.ts +++ b/packages/errors/src/i18n/locales/bg.ts @@ -102,6 +102,7 @@ const ERROR_I18N_BG_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Липсваща или невалидна заглавка за оторизация.", "auth_and_oauth.must_start_session_before_sending_messages": "Трябва да започнеш сесия, преди да изпращаш съобщения.", "auth_and_oauth.origin_handoff_nonce_invalid": "Това прехвърляне на влизането не съвпада с започнатото от теб.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Тази заявка за ключ за достъп не можа да бъде потвърдена. Опитай отново.", "auth_and_oauth.registration_closed": "Регистрацията е затворена на тази инстанция.", "auth_and_oauth.registration_pending_approval": "Тази регистрация чака одобрение от администратор.", "auth_and_oauth.registration_rejected": "Тази заявка за регистрация беше отхвърлена.", @@ -115,6 +116,8 @@ const ERROR_I18N_BG_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Изисква се sudo режим.", "auth_and_oauth.unknown_application": "Неизвестно приложение.", "auth_and_oauth.unknown_origin_handoff": "Това прехвърляне на влизането е изтекло или вече е използвано.", + "auth_and_oauth.unknown_passkey_bridge": "Тази заявка за ключ за достъп е изтекла. Опитай отново.", + "auth_and_oauth.unknown_passkey_migration": "В момента няма ключ за достъп за актуализиране.", "auth_and_registration.password_is_too_common": "Паролата ти е твърде често срещана. Избери по-трудна за отгатване парола.", "auth_and_registration.password_not_set": "Паролата не е зададена.", "bots.bot_discriminator_cannot_be_changed": "Дискриминаторът на бота не може да се променя.", diff --git a/packages/errors/src/i18n/locales/cs.ts b/packages/errors/src/i18n/locales/cs.ts index e0c836eed..e4044ae01 100644 --- a/packages/errors/src/i18n/locales/cs.ts +++ b/packages/errors/src/i18n/locales/cs.ts @@ -102,6 +102,7 @@ const ERROR_I18N_CS_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Chybí nebo je neplatná autorizační hlavička.", "auth_and_oauth.must_start_session_before_sending_messages": "Před odesíláním zpráv musíte zahájit relaci.", "auth_and_oauth.origin_handoff_nonce_invalid": "Tento přenos přihlášení neodpovídá tomu, který jste zahájili.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Tento požadavek na přístupový klíč se nepodařilo potvrdit. Zkuste to znovu.", "auth_and_oauth.registration_closed": "Registrace na této instanci je uzavřena.", "auth_and_oauth.registration_pending_approval": "Tato registrace čeká na schválení administrátorem.", "auth_and_oauth.registration_rejected": "Tato žádost o registraci byla zamítnuta.", @@ -115,6 +116,8 @@ const ERROR_I18N_CS_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Je vyžadován režim sudo.", "auth_and_oauth.unknown_application": "Neznámá aplikace.", "auth_and_oauth.unknown_origin_handoff": "Platnost tohoto přenosu přihlášení vypršela nebo už byl použit.", + "auth_and_oauth.unknown_passkey_bridge": "Platnost tohoto požadavku na přístupový klíč vypršela. Zkuste to znovu.", + "auth_and_oauth.unknown_passkey_migration": "Momentálně není žádný přístupový klíč k aktualizaci.", "auth_and_registration.password_is_too_common": "Vaše heslo je příliš běžné. Zvolte si hůře odhadnutelné heslo.", "auth_and_registration.password_not_set": "Heslo není nastavené.", "bots.bot_discriminator_cannot_be_changed": "Čtyřmístný identifikátor bota nelze změnit.", diff --git a/packages/errors/src/i18n/locales/da.ts b/packages/errors/src/i18n/locales/da.ts index b81991254..ae652c698 100644 --- a/packages/errors/src/i18n/locales/da.ts +++ b/packages/errors/src/i18n/locales/da.ts @@ -102,6 +102,7 @@ const ERROR_I18N_DA_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Manglende eller ugyldig godkendelsesheader.", "auth_and_oauth.must_start_session_before_sending_messages": "Du skal starte en session, før du sender beskeder.", "auth_and_oauth.origin_handoff_nonce_invalid": "Denne overførsel af login matcher ikke den, du startede.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Denne anmodning om adgangsnøgle kunne ikke bekræftes. Prøv igen.", "auth_and_oauth.registration_closed": "Tilmelding er lukket på denne instans.", "auth_and_oauth.registration_pending_approval": "Denne tilmelding afventer godkendelse fra administratoren.", "auth_and_oauth.registration_rejected": "Denne anmodning om tilmelding blev afvist.", @@ -115,6 +116,8 @@ const ERROR_I18N_DA_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudo-tilstand er påkrævet.", "auth_and_oauth.unknown_application": "Ukendt applikation.", "auth_and_oauth.unknown_origin_handoff": "Denne overførsel af login er udløbet eller allerede brugt.", + "auth_and_oauth.unknown_passkey_bridge": "Denne anmodning om adgangsnøgle er udløbet. Prøv igen.", + "auth_and_oauth.unknown_passkey_migration": "Der er ingen adgangsnøgle at opdatere lige nu.", "auth_and_registration.password_is_too_common": "Din adgangskode er for almindelig. Vælg en adgangskode, der er sværere at gætte.", "auth_and_registration.password_not_set": "Der er ikke angivet nogen adgangskode.", "bots.bot_discriminator_cannot_be_changed": "En bots tag kan ikke ændres.", diff --git a/packages/errors/src/i18n/locales/de.ts b/packages/errors/src/i18n/locales/de.ts index a725daca0..400c6e22a 100644 --- a/packages/errors/src/i18n/locales/de.ts +++ b/packages/errors/src/i18n/locales/de.ts @@ -102,6 +102,7 @@ const ERROR_I18N_DE_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Fehlender oder ungültiger Autorisierungsheader.", "auth_and_oauth.must_start_session_before_sending_messages": "Du musst eine Sitzung starten, bevor du Nachrichten senden kannst.", "auth_and_oauth.origin_handoff_nonce_invalid": "Diese Anmeldeübertragung stimmt nicht mit der von dir gestarteten überein.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Diese Passkey-Anfrage konnte nicht bestätigt werden. Versuche es erneut.", "auth_and_oauth.registration_closed": "Die Registrierung ist auf dieser Instanz geschlossen.", "auth_and_oauth.registration_pending_approval": "Diese Registrierung wartet auf die Genehmigung durch einen Administrator.", "auth_and_oauth.registration_rejected": "Diese Registrierungsanfrage wurde abgelehnt.", @@ -115,6 +116,8 @@ const ERROR_I18N_DE_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudo-Modus ist erforderlich.", "auth_and_oauth.unknown_application": "Unbekannte Anwendung.", "auth_and_oauth.unknown_origin_handoff": "Diese Anmeldeübertragung ist abgelaufen oder wurde bereits verwendet.", + "auth_and_oauth.unknown_passkey_bridge": "Diese Passkey-Anfrage ist abgelaufen. Versuche es erneut.", + "auth_and_oauth.unknown_passkey_migration": "Gerade gibt es keinen Passkey zum Aktualisieren.", "auth_and_registration.password_is_too_common": "Dein Passwort wird zu häufig verwendet. Wähle bitte ein Passwort, das weniger leicht zu erraten ist.", "auth_and_registration.password_not_set": "Das Passwort ist nicht festgelegt.", "bots.bot_discriminator_cannot_be_changed": "Der Bot-Discriminator kann nicht geändert werden.", diff --git a/packages/errors/src/i18n/locales/el.ts b/packages/errors/src/i18n/locales/el.ts index a7bedb0e5..ea742ad54 100644 --- a/packages/errors/src/i18n/locales/el.ts +++ b/packages/errors/src/i18n/locales/el.ts @@ -102,6 +102,7 @@ const ERROR_I18N_EL_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Λείπει ή είναι άκυρη η κεφαλίδα εξουσιοδότησης.", "auth_and_oauth.must_start_session_before_sending_messages": "Πρέπει να ξεκινήσεις συνεδρία πριν στείλεις μηνύματα.", "auth_and_oauth.origin_handoff_nonce_invalid": "Αυτή η μεταφορά σύνδεσης δεν αντιστοιχεί σε αυτήν που ξεκινήσατε.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Δεν ήταν δυνατή η επιβεβαίωση αυτού του αιτήματος κλειδιού πρόσβασης. Δοκίμασε ξανά.", "auth_and_oauth.registration_closed": "Η εγγραφή είναι κλειστή σε αυτήν την εγκατάσταση.", "auth_and_oauth.registration_pending_approval": "Αυτή η εγγραφή περιμένει έγκριση από τον διαχειριστή.", "auth_and_oauth.registration_rejected": "Αυτό το αίτημα εγγραφής απορρίφθηκε.", @@ -115,6 +116,8 @@ const ERROR_I18N_EL_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Απαιτείται η λειτουργία sudo.", "auth_and_oauth.unknown_application": "Άγνωστη εφαρμογή.", "auth_and_oauth.unknown_origin_handoff": "Αυτή η μεταφορά σύνδεσης έχει λήξει ή έχει ήδη χρησιμοποιηθεί.", + "auth_and_oauth.unknown_passkey_bridge": "Αυτό το αίτημα κλειδιού πρόσβασης έχει λήξει. Δοκίμασε ξανά.", + "auth_and_oauth.unknown_passkey_migration": "Δεν υπάρχει κλειδί πρόσβασης για ενημέρωση αυτή τη στιγμή.", "auth_and_registration.password_is_too_common": "Ο κωδικός πρόσβασής σου είναι πολύ κοινός. Διάλεξε έναν λιγότερο προβλέψιμο κωδικό πρόσβασης.", "auth_and_registration.password_not_set": "Ο κωδικός πρόσβασης δεν έχει οριστεί.", "bots.bot_discriminator_cannot_be_changed": "Το διακριτικό του bot δεν μπορεί να αλλάξει.", diff --git a/packages/errors/src/i18n/locales/en-GB.ts b/packages/errors/src/i18n/locales/en-GB.ts index ea79258fa..f12b3dd3b 100644 --- a/packages/errors/src/i18n/locales/en-GB.ts +++ b/packages/errors/src/i18n/locales/en-GB.ts @@ -102,6 +102,7 @@ const ERROR_I18N_EN_GB_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Missing or invalid authorisation header.", "auth_and_oauth.must_start_session_before_sending_messages": "You must start a session before sending messages.", "auth_and_oauth.origin_handoff_nonce_invalid": "This sign-in transfer doesn't match the one you started.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "This passkey request could not be confirmed. Try again.", "auth_and_oauth.registration_closed": "Registration is closed on this instance.", "auth_and_oauth.registration_pending_approval": "This registration is waiting for admin approval.", "auth_and_oauth.registration_rejected": "This registration request was rejected.", @@ -115,6 +116,8 @@ const ERROR_I18N_EN_GB_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudo mode is required.", "auth_and_oauth.unknown_application": "Unknown application.", "auth_and_oauth.unknown_origin_handoff": "This sign-in transfer has expired or was already used.", + "auth_and_oauth.unknown_passkey_bridge": "This passkey request has expired. Try again.", + "auth_and_oauth.unknown_passkey_migration": "There is no passkey to update right now.", "auth_and_registration.password_is_too_common": "Your password is too common. Please choose a less predictable password.", "auth_and_registration.password_not_set": "Password isn't set.", "bots.bot_discriminator_cannot_be_changed": "Bot discriminator can't be changed.", diff --git a/packages/errors/src/i18n/locales/es-419.ts b/packages/errors/src/i18n/locales/es-419.ts index 7b9a437e2..f30c174a8 100644 --- a/packages/errors/src/i18n/locales/es-419.ts +++ b/packages/errors/src/i18n/locales/es-419.ts @@ -102,6 +102,7 @@ const ERROR_I18N_ES_419_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Falta el encabezado de autorización o no es válido.", "auth_and_oauth.must_start_session_before_sending_messages": "Debes iniciar una sesión antes de enviar mensajes.", "auth_and_oauth.origin_handoff_nonce_invalid": "Esta transferencia de inicio de sesión no coincide con la que iniciaste.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "No se pudo confirmar esta solicitud de llave de acceso. Inténtalo de nuevo.", "auth_and_oauth.registration_closed": "El registro está cerrado en esta instancia.", "auth_and_oauth.registration_pending_approval": "Este registro está esperando la aprobación del administrador.", "auth_and_oauth.registration_rejected": "Esta solicitud de registro fue rechazada.", @@ -115,6 +116,8 @@ const ERROR_I18N_ES_419_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Se requiere el modo sudo.", "auth_and_oauth.unknown_application": "Aplicación desconocida.", "auth_and_oauth.unknown_origin_handoff": "Esta transferencia de inicio de sesión caducó o ya se usó.", + "auth_and_oauth.unknown_passkey_bridge": "Esta solicitud de llave de acceso caducó. Inténtalo de nuevo.", + "auth_and_oauth.unknown_passkey_migration": "No hay ninguna llave de acceso para actualizar en este momento.", "auth_and_registration.password_is_too_common": "Tu contraseña es demasiado común. Elige una contraseña menos predecible.", "auth_and_registration.password_not_set": "La contraseña no está configurada.", "bots.bot_discriminator_cannot_be_changed": "El discriminador del bot no se puede cambiar.", diff --git a/packages/errors/src/i18n/locales/es-ES.ts b/packages/errors/src/i18n/locales/es-ES.ts index be5bf396d..dfadac4b6 100644 --- a/packages/errors/src/i18n/locales/es-ES.ts +++ b/packages/errors/src/i18n/locales/es-ES.ts @@ -102,6 +102,7 @@ const ERROR_I18N_ES_ES_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Falta la cabecera de autorización o no es válida.", "auth_and_oauth.must_start_session_before_sending_messages": "Debes iniciar sesión antes de enviar mensajes.", "auth_and_oauth.origin_handoff_nonce_invalid": "Esta transferencia de inicio de sesión no coincide con la que iniciaste.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "No se ha podido confirmar esta solicitud de clave de acceso. Inténtalo de nuevo.", "auth_and_oauth.registration_closed": "El registro está cerrado en esta instancia.", "auth_and_oauth.registration_pending_approval": "Este registro está pendiente de aprobación por parte del administrador.", "auth_and_oauth.registration_rejected": "Esta solicitud de registro ha sido rechazada.", @@ -115,6 +116,8 @@ const ERROR_I18N_ES_ES_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Se requiere el modo sudo.", "auth_and_oauth.unknown_application": "Aplicación desconocida.", "auth_and_oauth.unknown_origin_handoff": "Esta transferencia de inicio de sesión ha caducado o ya se ha usado.", + "auth_and_oauth.unknown_passkey_bridge": "Esta solicitud de clave de acceso ha caducado. Inténtalo de nuevo.", + "auth_and_oauth.unknown_passkey_migration": "Ahora mismo no hay ninguna clave de acceso que actualizar.", "auth_and_registration.password_is_too_common": "Tu contraseña es demasiado común. Elige una contraseña menos predecible.", "auth_and_registration.password_not_set": "La contraseña no está establecida.", "bots.bot_discriminator_cannot_be_changed": "El discriminador del bot no se puede cambiar.", diff --git a/packages/errors/src/i18n/locales/fi.ts b/packages/errors/src/i18n/locales/fi.ts index b886fd45d..eccb0b458 100644 --- a/packages/errors/src/i18n/locales/fi.ts +++ b/packages/errors/src/i18n/locales/fi.ts @@ -102,6 +102,7 @@ const ERROR_I18N_FI_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Valtuutusotsake puuttuu tai on virheellinen.", "auth_and_oauth.must_start_session_before_sending_messages": "Sinun on aloitettava istunto ennen viestien lähettämistä.", "auth_and_oauth.origin_handoff_nonce_invalid": "Tämä kirjautumisen siirto ei vastaa aloittamaasi siirtoa.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Tätä pääsyavainpyyntöä ei voitu vahvistaa. Yritä uudelleen.", "auth_and_oauth.registration_closed": "Rekisteröinti on suljettu tällä instanssilla.", "auth_and_oauth.registration_pending_approval": "Tämä rekisteröinti odottaa järjestelmänvalvojan hyväksyntää.", "auth_and_oauth.registration_rejected": "Tämä rekisteröintipyyntö hylättiin.", @@ -115,6 +116,8 @@ const ERROR_I18N_FI_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudo-tila vaaditaan.", "auth_and_oauth.unknown_application": "Tuntematon sovellus.", "auth_and_oauth.unknown_origin_handoff": "Tämä kirjautumisen siirto on vanhentunut tai jo käytetty.", + "auth_and_oauth.unknown_passkey_bridge": "Tämä pääsyavainpyyntö on vanhentunut. Yritä uudelleen.", + "auth_and_oauth.unknown_passkey_migration": "Päivitettävää pääsyavainta ei ole juuri nyt.", "auth_and_registration.password_is_too_common": "Salasanasi on liian yleinen. Valitse vaikeammin arvattava salasana.", "auth_and_registration.password_not_set": "Salasanaa ei ole asetettu.", "bots.bot_discriminator_cannot_be_changed": "Botin nelinumeroista tunnistetta ei voi muuttaa.", diff --git a/packages/errors/src/i18n/locales/fr.ts b/packages/errors/src/i18n/locales/fr.ts index eb2b4656d..826013b8c 100644 --- a/packages/errors/src/i18n/locales/fr.ts +++ b/packages/errors/src/i18n/locales/fr.ts @@ -102,6 +102,7 @@ const ERROR_I18N_FR_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "En-tête d'autorisation manquant ou non valide.", "auth_and_oauth.must_start_session_before_sending_messages": "Vous devez démarrer une session avant d’envoyer des messages.", "auth_and_oauth.origin_handoff_nonce_invalid": "Ce transfert de connexion ne correspond pas à celui que vous avez lancé.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Cette demande de clé d'accès n'a pas pu être confirmée. Réessayez.", "auth_and_oauth.registration_closed": "L'inscription est fermée sur cette instance.", "auth_and_oauth.registration_pending_approval": "Cette inscription est en attente d'approbation par un administrateur.", "auth_and_oauth.registration_rejected": "Cette demande d'inscription a été rejetée.", @@ -115,6 +116,8 @@ const ERROR_I18N_FR_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Le mode Sudo est requis.", "auth_and_oauth.unknown_application": "Application inconnue.", "auth_and_oauth.unknown_origin_handoff": "Ce transfert de connexion a expiré ou a déjà été utilisé.", + "auth_and_oauth.unknown_passkey_bridge": "Cette demande de clé d'accès a expiré. Réessayez.", + "auth_and_oauth.unknown_passkey_migration": "Il n'y a aucune clé d'accès à mettre à jour pour le moment.", "auth_and_registration.password_is_too_common": "Votre mot de passe est trop courant. Choisissez-en un moins prévisible.", "auth_and_registration.password_not_set": "Le mot de passe n'est pas défini.", "bots.bot_discriminator_cannot_be_changed": "Le discriminateur du bot ne peut pas être modifié.", diff --git a/packages/errors/src/i18n/locales/he.ts b/packages/errors/src/i18n/locales/he.ts index 2101f23c0..479222aa9 100644 --- a/packages/errors/src/i18n/locales/he.ts +++ b/packages/errors/src/i18n/locales/he.ts @@ -102,6 +102,7 @@ const ERROR_I18N_HE_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "כותרת ההרשאה חסרה או שגויה.", "auth_and_oauth.must_start_session_before_sending_messages": "יש להתחיל סשן לפני שליחת הודעות.", "auth_and_oauth.origin_handoff_nonce_invalid": "העברת ההתחברות הזו אינה תואמת לזו שהתחלת.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "לא הצלחנו לאשר את בקשת מפתח הגישה הזו. ניתן לנסות שוב.", "auth_and_oauth.registration_closed": "ההרשמה סגורה במופע זה.", "auth_and_oauth.registration_pending_approval": "הרשמה זו ממתינה לאישור מנהל.", "auth_and_oauth.registration_rejected": "בקשת הרשמה זו נדחתה.", @@ -115,6 +116,8 @@ const ERROR_I18N_HE_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "נדרש מצב sudo.", "auth_and_oauth.unknown_application": "אפליקציה לא ידועה.", "auth_and_oauth.unknown_origin_handoff": "פג תוקפה של העברת ההתחברות הזו או שכבר נעשה בה שימוש.", + "auth_and_oauth.unknown_passkey_bridge": "תוקף בקשת מפתח הגישה הזו פג. ניתן לנסות שוב.", + "auth_and_oauth.unknown_passkey_migration": "אין כרגע מפתח גישה לעדכון.", "auth_and_registration.password_is_too_common": "הסיסמה שלך נפוצה מדי. מומלץ לבחור סיסמה פחות צפויה.", "auth_and_registration.password_not_set": "סיסמה לא הוגדרה.", "bots.bot_discriminator_cannot_be_changed": "לא ניתן לשנות את המזהה של הבוט.", diff --git a/packages/errors/src/i18n/locales/hi.ts b/packages/errors/src/i18n/locales/hi.ts index 17de90199..02dc5104c 100644 --- a/packages/errors/src/i18n/locales/hi.ts +++ b/packages/errors/src/i18n/locales/hi.ts @@ -102,6 +102,7 @@ const ERROR_I18N_HI_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "ऑथराइज़ेशन हेडर गायब या अमान्य है।", "auth_and_oauth.must_start_session_before_sending_messages": "मैसेज भेजने से पहले आपको एक सेशन शुरू करना होगा।", "auth_and_oauth.origin_handoff_nonce_invalid": "यह साइन-इन ट्रांसफ़र आपके द्वारा शुरू किए गए ट्रांसफ़र से मेल नहीं खाता।", + "auth_and_oauth.passkey_bridge_nonce_invalid": "इस पासकी अनुरोध की पुष्टि नहीं हो सकी। फिर से कोशिश करें।", "auth_and_oauth.registration_closed": "इस इंस्टेंस पर रजिस्ट्रेशन बंद है।", "auth_and_oauth.registration_pending_approval": "यह रजिस्ट्रेशन एडमिन अप्रूवल का इंतज़ार कर रहा है।", "auth_and_oauth.registration_rejected": "यह रजिस्ट्रेशन रिक्वेस्ट रिजेक्ट कर दी गई है।", @@ -115,6 +116,8 @@ const ERROR_I18N_HI_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "सुडो मोड ज़रूरी है।", "auth_and_oauth.unknown_application": "अज्ञात एप्लीकेशन।", "auth_and_oauth.unknown_origin_handoff": "यह साइन-इन ट्रांसफ़र समाप्त हो गया है या पहले ही उपयोग किया जा चुका है।", + "auth_and_oauth.unknown_passkey_bridge": "इस पासकी अनुरोध की समय-सीमा समाप्त हो गई है। फिर से कोशिश करें।", + "auth_and_oauth.unknown_passkey_migration": "अभी अपडेट करने के लिए कोई पासकी नहीं है।", "auth_and_registration.password_is_too_common": "आपका पासवर्ड बहुत कॉमन है। कृपया ऐसा पासवर्ड चुनें जिसका अंदाज़ा लगाना मुश्किल हो।", "auth_and_registration.password_not_set": "पासवर्ड सेट नहीं है।", "bots.bot_discriminator_cannot_be_changed": "बॉट डिस्क्रिमिनेटर को बदला नहीं जा सकता।", diff --git a/packages/errors/src/i18n/locales/hr.ts b/packages/errors/src/i18n/locales/hr.ts index bf8d58cc0..6696c6e72 100644 --- a/packages/errors/src/i18n/locales/hr.ts +++ b/packages/errors/src/i18n/locales/hr.ts @@ -102,6 +102,7 @@ const ERROR_I18N_HR_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Nedostaje ili je nevažeće autorizacijsko zaglavlje.", "auth_and_oauth.must_start_session_before_sending_messages": "Moraš započeti sesiju prije slanja poruka.", "auth_and_oauth.origin_handoff_nonce_invalid": "Ovaj prijenos prijave ne odgovara onome koji ste započeli.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Ovaj zahtjev za pristupni ključ nije moguće potvrditi. Pokušaj ponovno.", "auth_and_oauth.registration_closed": "Registracija je zatvorena na ovoj instanci.", "auth_and_oauth.registration_pending_approval": "Ova registracija čeka odobrenje administratora.", "auth_and_oauth.registration_rejected": "Ovaj zahtjev za registraciju je odbijen.", @@ -115,6 +116,8 @@ const ERROR_I18N_HR_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Potreban je sudo način rada.", "auth_and_oauth.unknown_application": "Nepoznata aplikacija.", "auth_and_oauth.unknown_origin_handoff": "Ovaj prijenos prijave je istekao ili je već iskorišten.", + "auth_and_oauth.unknown_passkey_bridge": "Ovaj je zahtjev za pristupni ključ istekao. Pokušaj ponovno.", + "auth_and_oauth.unknown_passkey_migration": "Trenutačno nema pristupnog ključa za ažuriranje.", "auth_and_registration.password_is_too_common": "Tvoja je lozinka previše uobičajena. Odaberi manje predvidljivu lozinku.", "auth_and_registration.password_not_set": "Lozinka nije postavljena.", "bots.bot_discriminator_cannot_be_changed": "Diskriminator bota ne može se promijeniti.", diff --git a/packages/errors/src/i18n/locales/hu.ts b/packages/errors/src/i18n/locales/hu.ts index f8187940d..7e465c2cb 100644 --- a/packages/errors/src/i18n/locales/hu.ts +++ b/packages/errors/src/i18n/locales/hu.ts @@ -102,6 +102,7 @@ const ERROR_I18N_HU_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Hiányzó vagy érvénytelen hitelesítési fejléc.", "auth_and_oauth.must_start_session_before_sending_messages": "Üzenetek küldéséhez előbb munkamenetet kell indítanod.", "auth_and_oauth.origin_handoff_nonce_invalid": "Ez a bejelentkezés-átvitel nem egyezik azzal, amelyet elindítottál.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Ezt a jelszókulcs-kérést nem sikerült megerősíteni. Próbáld újra.", "auth_and_oauth.registration_closed": "Ezen a példányon a regisztráció le van zárva.", "auth_and_oauth.registration_pending_approval": "Ez a regisztráció rendszergazdai jóváhagyásra vár.", "auth_and_oauth.registration_rejected": "Ez a regisztrációs kérelem el lett utasítva.", @@ -115,6 +116,8 @@ const ERROR_I18N_HU_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudo mód szükséges.", "auth_and_oauth.unknown_application": "Ismeretlen alkalmazás.", "auth_and_oauth.unknown_origin_handoff": "Ez a bejelentkezés-átvitel lejárt, vagy már felhasználták.", + "auth_and_oauth.unknown_passkey_bridge": "Ez a jelszókulcs-kérés lejárt. Próbáld újra.", + "auth_and_oauth.unknown_passkey_migration": "Jelenleg nincs frissítendő jelszókulcs.", "auth_and_registration.password_is_too_common": "A jelszavad túl gyakori. Válassz nehezebben kitalálható jelszót.", "auth_and_registration.password_not_set": "Nincs beállítva jelszó.", "bots.bot_discriminator_cannot_be_changed": "A bot számazonosítója nem módosítható.", diff --git a/packages/errors/src/i18n/locales/id.ts b/packages/errors/src/i18n/locales/id.ts index 1a9cff425..7362d8562 100644 --- a/packages/errors/src/i18n/locales/id.ts +++ b/packages/errors/src/i18n/locales/id.ts @@ -102,6 +102,7 @@ const ERROR_I18N_ID_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Header otorisasi hilang atau tidak valid.", "auth_and_oauth.must_start_session_before_sending_messages": "Kamu harus memulai sesi sebelum mengirim pesan.", "auth_and_oauth.origin_handoff_nonce_invalid": "Transfer masuk ini tidak cocok dengan yang kamu mulai.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Permintaan passkey ini tidak dapat dikonfirmasi. Coba lagi.", "auth_and_oauth.registration_closed": "Pendaftaran ditutup di instance ini.", "auth_and_oauth.registration_pending_approval": "Pendaftaran ini menunggu persetujuan admin.", "auth_and_oauth.registration_rejected": "Permintaan pendaftaran ini ditolak.", @@ -115,6 +116,8 @@ const ERROR_I18N_ID_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Mode sudo diperlukan.", "auth_and_oauth.unknown_application": "Aplikasi tidak dikenal.", "auth_and_oauth.unknown_origin_handoff": "Transfer masuk ini sudah kedaluwarsa atau sudah digunakan.", + "auth_and_oauth.unknown_passkey_bridge": "Permintaan passkey ini sudah kedaluwarsa. Coba lagi.", + "auth_and_oauth.unknown_passkey_migration": "Saat ini tidak ada passkey yang perlu diperbarui.", "auth_and_registration.password_is_too_common": "Kata sandimu terlalu umum. Pilih kata sandi yang lebih sulit ditebak.", "auth_and_registration.password_not_set": "Kata sandi belum diatur.", "bots.bot_discriminator_cannot_be_changed": "Diskriminator bot tidak dapat diubah.", diff --git a/packages/errors/src/i18n/locales/it.ts b/packages/errors/src/i18n/locales/it.ts index 52a2999b0..c1a87ed76 100644 --- a/packages/errors/src/i18n/locales/it.ts +++ b/packages/errors/src/i18n/locales/it.ts @@ -102,6 +102,7 @@ const ERROR_I18N_IT_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Header di autorizzazione mancante o non valido.", "auth_and_oauth.must_start_session_before_sending_messages": "Devi avviare una sessione prima di inviare messaggi.", "auth_and_oauth.origin_handoff_nonce_invalid": "Questo trasferimento di accesso non corrisponde a quello che hai avviato.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Non è stato possibile confermare questa richiesta di passkey. Riprova.", "auth_and_oauth.registration_closed": "La registrazione è chiusa su questa istanza.", "auth_and_oauth.registration_pending_approval": "Questa registrazione è in attesa dell'approvazione dell'amministratore.", "auth_and_oauth.registration_rejected": "Questa richiesta di registrazione è stata rifiutata.", @@ -115,6 +116,8 @@ const ERROR_I18N_IT_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "La modalità Sudo è richiesta.", "auth_and_oauth.unknown_application": "Applicazione sconosciuta.", "auth_and_oauth.unknown_origin_handoff": "Questo trasferimento di accesso è scaduto o è già stato usato.", + "auth_and_oauth.unknown_passkey_bridge": "Questa richiesta di passkey è scaduta. Riprova.", + "auth_and_oauth.unknown_passkey_migration": "Al momento non c'è nessuna passkey da aggiornare.", "auth_and_registration.password_is_too_common": "La tua password è troppo comune. Scegli una password meno prevedibile.", "auth_and_registration.password_not_set": "La password non è impostata.", "bots.bot_discriminator_cannot_be_changed": "Il discriminatore del bot non può essere modificato.", diff --git a/packages/errors/src/i18n/locales/ja.ts b/packages/errors/src/i18n/locales/ja.ts index 571f744e0..3db49da25 100644 --- a/packages/errors/src/i18n/locales/ja.ts +++ b/packages/errors/src/i18n/locales/ja.ts @@ -102,6 +102,7 @@ const ERROR_I18N_JA_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "認証ヘッダーが見つからないか、無効です。", "auth_and_oauth.must_start_session_before_sending_messages": "メッセージを送信する前にセッションを開始してください。", "auth_and_oauth.origin_handoff_nonce_invalid": "このサインインの引き継ぎは、開始したものと一致しません。", + "auth_and_oauth.passkey_bridge_nonce_invalid": "このパスキーのリクエストを確認できませんでした。もう一度お試しください。", "auth_and_oauth.registration_closed": "このインスタンスでは新規登録を受け付けていません。", "auth_and_oauth.registration_pending_approval": "この登録は管理者による承認待ちです。", "auth_and_oauth.registration_rejected": "この登録リクエストは拒否されました。", @@ -115,6 +116,8 @@ const ERROR_I18N_JA_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudoモードが必要です。", "auth_and_oauth.unknown_application": "不明なアプリケーションです。", "auth_and_oauth.unknown_origin_handoff": "このサインインの引き継ぎは期限切れか、すでに使用されています。", + "auth_and_oauth.unknown_passkey_bridge": "このパスキーのリクエストは期限切れです。もう一度お試しください。", + "auth_and_oauth.unknown_passkey_migration": "現在、更新するパスキーはありません。", "auth_and_registration.password_is_too_common": "パスワードが一般的すぎます。より推測されにくいパスワードを設定してください。", "auth_and_registration.password_not_set": "パスワードが未設定です。", "bots.bot_discriminator_cannot_be_changed": "ボットの識別子は変更できません。", diff --git a/packages/errors/src/i18n/locales/ko.ts b/packages/errors/src/i18n/locales/ko.ts index 140998adf..6763479a5 100644 --- a/packages/errors/src/i18n/locales/ko.ts +++ b/packages/errors/src/i18n/locales/ko.ts @@ -102,6 +102,7 @@ const ERROR_I18N_KO_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "인증 헤더가 없거나 유효하지 않아요.", "auth_and_oauth.must_start_session_before_sending_messages": "메시지를 보내기 전에 세션을 시작해야 해요.", "auth_and_oauth.origin_handoff_nonce_invalid": "이 로그인 이전 요청이 시작하신 요청과 일치하지 않습니다.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "이 패스키 요청을 확인하지 못했어요. 다시 시도해 주세요.", "auth_and_oauth.registration_closed": "이 인스턴스에서는 가입을 받고 있지 않아요.", "auth_and_oauth.registration_pending_approval": "이 가입 신청은 관리자 승인을 기다리고 있어요.", "auth_and_oauth.registration_rejected": "이 가입 요청은 거부되었어요.", @@ -115,6 +116,8 @@ const ERROR_I18N_KO_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudo 모드가 필요해요.", "auth_and_oauth.unknown_application": "알 수 없는 애플리케이션이에요.", "auth_and_oauth.unknown_origin_handoff": "이 로그인 이전 요청이 만료되었거나 이미 사용되었습니다.", + "auth_and_oauth.unknown_passkey_bridge": "이 패스키 요청이 만료되었어요. 다시 시도해 주세요.", + "auth_and_oauth.unknown_passkey_migration": "지금은 업데이트할 패스키가 없어요.", "auth_and_registration.password_is_too_common": "비밀번호가 너무 흔해요. 추측하기 어려운 비밀번호를 사용해 주세요.", "auth_and_registration.password_not_set": "비밀번호가 설정되지 않았어요.", "bots.bot_discriminator_cannot_be_changed": "봇 디스크리미네이터를 변경할 수 없어요.", diff --git a/packages/errors/src/i18n/locales/lt.ts b/packages/errors/src/i18n/locales/lt.ts index 438eaa9b9..49ef2d389 100644 --- a/packages/errors/src/i18n/locales/lt.ts +++ b/packages/errors/src/i18n/locales/lt.ts @@ -102,6 +102,7 @@ const ERROR_I18N_LT_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Trūksta autorizacijos antraštės arba ji neteisinga.", "auth_and_oauth.must_start_session_before_sending_messages": "Kad galėtum siųsti žinutes, pirmiausia pradėk seansą.", "auth_and_oauth.origin_handoff_nonce_invalid": "Šis prisijungimo perkėlimas nesutampa su tuo, kurį pradėjote.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Nepavyko patvirtinti šios prieigos rakto užklausos. Bandyk dar kartą.", "auth_and_oauth.registration_closed": "Registracija šioje instancijoje yra uždaryta.", "auth_and_oauth.registration_pending_approval": "Ši registracija laukia administratoriaus patvirtinimo.", "auth_and_oauth.registration_rejected": "Šis registracijos prašymas buvo atmestas.", @@ -115,6 +116,8 @@ const ERROR_I18N_LT_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Reikalingas sudo režimas.", "auth_and_oauth.unknown_application": "Nežinoma programa.", "auth_and_oauth.unknown_origin_handoff": "Šio prisijungimo perkėlimo galiojimas baigėsi arba jis jau panaudotas.", + "auth_and_oauth.unknown_passkey_bridge": "Šios prieigos rakto užklausos galiojimas baigėsi. Bandyk dar kartą.", + "auth_and_oauth.unknown_passkey_migration": "Šiuo metu nėra prieigos rakto, kurį reikėtų atnaujinti.", "auth_and_registration.password_is_too_common": "Tavo slaptažodis per dažnai naudojamas. Pasirink sunkiau nuspėjamą slaptažodį.", "auth_and_registration.password_not_set": "Slaptažodis nenustatytas.", "bots.bot_discriminator_cannot_be_changed": "Boto diskriminatoriaus negalima pakeisti.", diff --git a/packages/errors/src/i18n/locales/nl.ts b/packages/errors/src/i18n/locales/nl.ts index 37742b0b1..9020d36ca 100644 --- a/packages/errors/src/i18n/locales/nl.ts +++ b/packages/errors/src/i18n/locales/nl.ts @@ -102,6 +102,7 @@ const ERROR_I18N_NL_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "De autorisatieheader ontbreekt of is ongeldig.", "auth_and_oauth.must_start_session_before_sending_messages": "Je moet een sessie starten voordat je berichten kunt verzenden.", "auth_and_oauth.origin_handoff_nonce_invalid": "Deze aanmeldoverdracht komt niet overeen met de overdracht die je hebt gestart.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Dit passkey-verzoek kon niet worden bevestigd. Probeer het opnieuw.", "auth_and_oauth.registration_closed": "Registratie is gesloten op deze instantie.", "auth_and_oauth.registration_pending_approval": "Deze registratie wacht op goedkeuring van de beheerder.", "auth_and_oauth.registration_rejected": "Dit registratieverzoek is afgewezen.", @@ -115,6 +116,8 @@ const ERROR_I18N_NL_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudo-modus is vereist.", "auth_and_oauth.unknown_application": "Onbekende app.", "auth_and_oauth.unknown_origin_handoff": "Deze aanmeldoverdracht is verlopen of al gebruikt.", + "auth_and_oauth.unknown_passkey_bridge": "Dit passkey-verzoek is verlopen. Probeer het opnieuw.", + "auth_and_oauth.unknown_passkey_migration": "Er is op dit moment geen passkey om bij te werken.", "auth_and_registration.password_is_too_common": "Je wachtwoord komt te vaak voor. Kies een minder voorspelbaar wachtwoord.", "auth_and_registration.password_not_set": "Wachtwoord is niet ingesteld.", "bots.bot_discriminator_cannot_be_changed": "De discriminator van een bot kan niet worden gewijzigd.", diff --git a/packages/errors/src/i18n/locales/no.ts b/packages/errors/src/i18n/locales/no.ts index c921de97e..397bbf342 100644 --- a/packages/errors/src/i18n/locales/no.ts +++ b/packages/errors/src/i18n/locales/no.ts @@ -102,6 +102,7 @@ const ERROR_I18N_NO_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Autorisasjonsheaderen mangler eller er ugyldig.", "auth_and_oauth.must_start_session_before_sending_messages": "Du må starte en økt før du sender meldinger.", "auth_and_oauth.origin_handoff_nonce_invalid": "Denne overføringen av påloggingen samsvarer ikke med den du startet.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Denne forespørselen om passnøkkel kunne ikke bekreftes. Prøv igjen.", "auth_and_oauth.registration_closed": "Registrering er stengt på denne instansen.", "auth_and_oauth.registration_pending_approval": "Denne registreringen venter på administratorgodkjenning.", "auth_and_oauth.registration_rejected": "Denne registreringsforespørselen ble avvist.", @@ -115,6 +116,8 @@ const ERROR_I18N_NO_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudo-modus er påkrevd.", "auth_and_oauth.unknown_application": "Ukjent app.", "auth_and_oauth.unknown_origin_handoff": "Denne overføringen av påloggingen er utløpt eller allerede brukt.", + "auth_and_oauth.unknown_passkey_bridge": "Denne forespørselen om passnøkkel er utløpt. Prøv igjen.", + "auth_and_oauth.unknown_passkey_migration": "Det er ingen passnøkkel å oppdatere akkurat nå.", "auth_and_registration.password_is_too_common": "Passordet ditt er for vanlig. Velg et passord som er vanskeligere å gjette.", "auth_and_registration.password_not_set": "Det er ikke angitt noe passord.", "bots.bot_discriminator_cannot_be_changed": "Botens diskriminator kan ikke endres.", diff --git a/packages/errors/src/i18n/locales/pl.ts b/packages/errors/src/i18n/locales/pl.ts index 24612291e..d0be6aaec 100644 --- a/packages/errors/src/i18n/locales/pl.ts +++ b/packages/errors/src/i18n/locales/pl.ts @@ -102,6 +102,7 @@ const ERROR_I18N_PL_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Brakuje nagłówka autoryzacji lub jest on nieprawidłowy.", "auth_and_oauth.must_start_session_before_sending_messages": "Musisz rozpocząć sesję, zanim wyślesz wiadomości.", "auth_and_oauth.origin_handoff_nonce_invalid": "To przeniesienie logowania nie pasuje do tego, które zostało rozpoczęte.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Nie udało się potwierdzić tego żądania klucza dostępu. Spróbuj ponownie.", "auth_and_oauth.registration_closed": "Rejestracja na tej instancji jest zamknięta.", "auth_and_oauth.registration_pending_approval": "Ta rejestracja czeka na zatwierdzenie przez administratora.", "auth_and_oauth.registration_rejected": "Ten wniosek o rejestrację został odrzucony.", @@ -115,6 +116,8 @@ const ERROR_I18N_PL_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Wymagany tryb sudo.", "auth_and_oauth.unknown_application": "Nieznana aplikacja.", "auth_and_oauth.unknown_origin_handoff": "To przeniesienie logowania wygasło lub zostało już użyte.", + "auth_and_oauth.unknown_passkey_bridge": "To żądanie klucza dostępu wygasło. Spróbuj ponownie.", + "auth_and_oauth.unknown_passkey_migration": "Obecnie nie ma klucza dostępu do zaktualizowania.", "auth_and_registration.password_is_too_common": "Twoje hasło jest zbyt popularne. Wybierz mniej przewidywalne hasło.", "auth_and_registration.password_not_set": "Hasło nie jest ustawione.", "bots.bot_discriminator_cannot_be_changed": "Nie można zmienić dyskryminatora bota.", diff --git a/packages/errors/src/i18n/locales/pt-BR.ts b/packages/errors/src/i18n/locales/pt-BR.ts index 46e1dd9c0..4139c7590 100644 --- a/packages/errors/src/i18n/locales/pt-BR.ts +++ b/packages/errors/src/i18n/locales/pt-BR.ts @@ -102,6 +102,7 @@ const ERROR_I18N_PT_BR_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Cabeçalho de autorização ausente ou inválido.", "auth_and_oauth.must_start_session_before_sending_messages": "Você deve iniciar uma sessão antes de enviar mensagens.", "auth_and_oauth.origin_handoff_nonce_invalid": "Esta transferência de login não corresponde à que você iniciou.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Não foi possível confirmar esta solicitação de chave de acesso. Tente novamente.", "auth_and_oauth.registration_closed": "O cadastro está fechado nesta instância.", "auth_and_oauth.registration_pending_approval": "Este cadastro está aguardando a aprovação de um administrador.", "auth_and_oauth.registration_rejected": "Esta solicitação de cadastro foi rejeitada.", @@ -115,6 +116,8 @@ const ERROR_I18N_PT_BR_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "O modo sudo é obrigatório.", "auth_and_oauth.unknown_application": "Aplicativo desconhecido.", "auth_and_oauth.unknown_origin_handoff": "Esta transferência de login expirou ou já foi usada.", + "auth_and_oauth.unknown_passkey_bridge": "Esta solicitação de chave de acesso expirou. Tente novamente.", + "auth_and_oauth.unknown_passkey_migration": "Não há nenhuma chave de acesso para atualizar agora.", "auth_and_registration.password_is_too_common": "Sua senha é muito comum. Escolha uma senha menos previsível.", "auth_and_registration.password_not_set": "A senha não foi definida.", "bots.bot_discriminator_cannot_be_changed": "O discriminador do bot não pode ser alterado.", diff --git a/packages/errors/src/i18n/locales/ro.ts b/packages/errors/src/i18n/locales/ro.ts index 34470ae37..039df5207 100644 --- a/packages/errors/src/i18n/locales/ro.ts +++ b/packages/errors/src/i18n/locales/ro.ts @@ -102,6 +102,7 @@ const ERROR_I18N_RO_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Headerul de autorizare lipsește sau este invalid.", "auth_and_oauth.must_start_session_before_sending_messages": "Trebuie să începi o sesiune înainte de a trimite mesaje.", "auth_and_oauth.origin_handoff_nonce_invalid": "Acest transfer de autentificare nu corespunde celui pe care l-ai început.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Această cerere pentru cheia de acces nu a putut fi confirmată. Încearcă din nou.", "auth_and_oauth.registration_closed": "Înregistrarea este închisă pe această instanță.", "auth_and_oauth.registration_pending_approval": "Această înregistrare așteaptă aprobarea administratorului.", "auth_and_oauth.registration_rejected": "Această cerere de înregistrare a fost respinsă.", @@ -115,6 +116,8 @@ const ERROR_I18N_RO_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Modul Sudo este necesar.", "auth_and_oauth.unknown_application": "Aplicație necunoscută.", "auth_and_oauth.unknown_origin_handoff": "Acest transfer de autentificare a expirat sau a fost deja folosit.", + "auth_and_oauth.unknown_passkey_bridge": "Această cerere pentru cheia de acces a expirat. Încearcă din nou.", + "auth_and_oauth.unknown_passkey_migration": "Momentan nu există nicio cheie de acces de actualizat.", "auth_and_registration.password_is_too_common": "Parola ta este prea comună. Alege o parolă mai greu de ghicit.", "auth_and_registration.password_not_set": "Parola nu este setată.", "bots.bot_discriminator_cannot_be_changed": "Discriminatorul botului nu poate fi schimbat.", diff --git a/packages/errors/src/i18n/locales/ru.ts b/packages/errors/src/i18n/locales/ru.ts index 0ab2092b3..62ca6f93e 100644 --- a/packages/errors/src/i18n/locales/ru.ts +++ b/packages/errors/src/i18n/locales/ru.ts @@ -102,6 +102,7 @@ const ERROR_I18N_RU_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Заголовок авторизации отсутствует или недействителен.", "auth_and_oauth.must_start_session_before_sending_messages": "Перед отправкой сообщений нужно начать сессию.", "auth_and_oauth.origin_handoff_nonce_invalid": "Этот перенос входа не совпадает с тем, который вы начали.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Не удалось подтвердить этот запрос ключа доступа. Повторите попытку.", "auth_and_oauth.registration_closed": "Регистрация в этом экземпляре закрыта.", "auth_and_oauth.registration_pending_approval": "Эта регистрация ожидает одобрения администратора.", "auth_and_oauth.registration_rejected": "Заявка на регистрацию отклонена.", @@ -115,6 +116,8 @@ const ERROR_I18N_RU_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Требуется режим sudo.", "auth_and_oauth.unknown_application": "Неизвестное приложение.", "auth_and_oauth.unknown_origin_handoff": "Срок действия этого переноса входа истёк, или он уже использован.", + "auth_and_oauth.unknown_passkey_bridge": "Срок действия этого запроса ключа доступа истёк. Повторите попытку.", + "auth_and_oauth.unknown_passkey_migration": "Сейчас нет ключа доступа, который нужно обновить.", "auth_and_registration.password_is_too_common": "Твой пароль слишком распространённый. Придумай менее предсказуемый пароль.", "auth_and_registration.password_not_set": "Пароль не установлен.", "bots.bot_discriminator_cannot_be_changed": "Дискриминатор бота нельзя изменить.", diff --git a/packages/errors/src/i18n/locales/sv-SE.ts b/packages/errors/src/i18n/locales/sv-SE.ts index 2f491034e..a88445a7f 100644 --- a/packages/errors/src/i18n/locales/sv-SE.ts +++ b/packages/errors/src/i18n/locales/sv-SE.ts @@ -102,6 +102,7 @@ const ERROR_I18N_SV_SE_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Authorization-huvudet saknas eller är ogiltigt.", "auth_and_oauth.must_start_session_before_sending_messages": "Du måste starta en session innan du kan skicka meddelanden.", "auth_and_oauth.origin_handoff_nonce_invalid": "Den här inloggningsöverföringen matchar inte den du startade.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Den här begäran om lösennyckel kunde inte bekräftas. Försök igen.", "auth_and_oauth.registration_closed": "Registrering är stängd på den här instansen.", "auth_and_oauth.registration_pending_approval": "Den här registreringen väntar på administratörsgodkännande.", "auth_and_oauth.registration_rejected": "Den här registreringsbegäran avslogs.", @@ -115,6 +116,8 @@ const ERROR_I18N_SV_SE_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudo-läge krävs.", "auth_and_oauth.unknown_application": "Okänd applikation.", "auth_and_oauth.unknown_origin_handoff": "Den här inloggningsöverföringen har gått ut eller har redan använts.", + "auth_and_oauth.unknown_passkey_bridge": "Den här begäran om lösennyckel har gått ut. Försök igen.", + "auth_and_oauth.unknown_passkey_migration": "Det finns ingen lösennyckel att uppdatera just nu.", "auth_and_registration.password_is_too_common": "Ditt lösenord är för vanligt. Välj ett lösenord som är svårare att gissa.", "auth_and_registration.password_not_set": "Inget lösenord har angetts.", "bots.bot_discriminator_cannot_be_changed": "Botdiskriminatorn kan inte ändras.", diff --git a/packages/errors/src/i18n/locales/th.ts b/packages/errors/src/i18n/locales/th.ts index a0dd90595..5cef2ddc9 100644 --- a/packages/errors/src/i18n/locales/th.ts +++ b/packages/errors/src/i18n/locales/th.ts @@ -102,6 +102,7 @@ const ERROR_I18N_TH_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "ส่วนหัว Authorization หายไปหรือไม่ถูกต้อง", "auth_and_oauth.must_start_session_before_sending_messages": "ต้องเริ่มเซสชันก่อนส่งข้อความ", "auth_and_oauth.origin_handoff_nonce_invalid": "การโอนการลงชื่อเข้าใช้นี้ไม่ตรงกับรายการที่คุณเริ่มไว้", + "auth_and_oauth.passkey_bridge_nonce_invalid": "ไม่สามารถยืนยันคำขอพาสคีย์นี้ได้ ลองอีกครั้ง", "auth_and_oauth.registration_closed": "การลงทะเบียนปิดให้บริการในอินสแตนซ์นี้", "auth_and_oauth.registration_pending_approval": "การลงทะเบียนนี้กำลังรอการอนุมัติจากผู้ดูแลระบบ", "auth_and_oauth.registration_rejected": "คำขอลงทะเบียนนี้ถูกปฏิเสธ", @@ -115,6 +116,8 @@ const ERROR_I18N_TH_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "ต้องใช้โหมด sudo", "auth_and_oauth.unknown_application": "ไม่พบแอปพลิเคชัน", "auth_and_oauth.unknown_origin_handoff": "การโอนการลงชื่อเข้าใช้นี้หมดอายุแล้วหรือถูกใช้ไปแล้ว", + "auth_and_oauth.unknown_passkey_bridge": "คำขอพาสคีย์นี้หมดอายุแล้ว ลองอีกครั้ง", + "auth_and_oauth.unknown_passkey_migration": "ขณะนี้ไม่มีพาสคีย์ที่ต้องอัปเดต", "auth_and_registration.password_is_too_common": "รหัสผ่านของคุณเป็นรหัสที่พบบ่อยเกินไป โปรดเลือกรหัสผ่านที่เดาได้ยากขึ้น", "auth_and_registration.password_not_set": "ยังไม่ได้ตั้งรหัสผ่าน", "bots.bot_discriminator_cannot_be_changed": "ไม่สามารถเปลี่ยน discriminator ของบอทได้", diff --git a/packages/errors/src/i18n/locales/tr.ts b/packages/errors/src/i18n/locales/tr.ts index a33139dc5..d60e974aa 100644 --- a/packages/errors/src/i18n/locales/tr.ts +++ b/packages/errors/src/i18n/locales/tr.ts @@ -102,6 +102,7 @@ const ERROR_I18N_TR_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Eksik veya geçersiz yetkilendirme başlığı.", "auth_and_oauth.must_start_session_before_sending_messages": "Mesaj göndermeden önce bir oturum başlatmalısın.", "auth_and_oauth.origin_handoff_nonce_invalid": "Bu oturum açma aktarımı başlattığınız aktarımla eşleşmiyor.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Bu geçiş anahtarı isteği doğrulanamadı. Tekrar dene.", "auth_and_oauth.registration_closed": "Bu kurulumda kayıt kapalı.", "auth_and_oauth.registration_pending_approval": "Bu kayıt yönetici onayını bekliyor.", "auth_and_oauth.registration_rejected": "Bu kayıt isteği reddedildi.", @@ -115,6 +116,8 @@ const ERROR_I18N_TR_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Sudo modu gerekli.", "auth_and_oauth.unknown_application": "Bilinmeyen uygulama.", "auth_and_oauth.unknown_origin_handoff": "Bu oturum açma aktarımının süresi doldu veya zaten kullanıldı.", + "auth_and_oauth.unknown_passkey_bridge": "Bu geçiş anahtarı isteğinin süresi doldu. Tekrar dene.", + "auth_and_oauth.unknown_passkey_migration": "Şu anda güncellenecek bir geçiş anahtarı yok.", "auth_and_registration.password_is_too_common": "Şifren çok yaygın. Lütfen tahmin edilmesi daha zor bir şifre seç.", "auth_and_registration.password_not_set": "Şifre ayarlanmamış.", "bots.bot_discriminator_cannot_be_changed": "Bot etiketi değiştirilemez.", diff --git a/packages/errors/src/i18n/locales/uk.ts b/packages/errors/src/i18n/locales/uk.ts index b4abcf74b..4bf3492f8 100644 --- a/packages/errors/src/i18n/locales/uk.ts +++ b/packages/errors/src/i18n/locales/uk.ts @@ -102,6 +102,7 @@ const ERROR_I18N_UK_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Відсутній або недійсний заголовок авторизації.", "auth_and_oauth.must_start_session_before_sending_messages": "Потрібно розпочати сесію, перш ніж надсилати повідомлення.", "auth_and_oauth.origin_handoff_nonce_invalid": "Це перенесення входу не збігається з тим, яке ви розпочали.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Не вдалося підтвердити цей запит ключа доступу. Спробуй ще раз.", "auth_and_oauth.registration_closed": "Реєстрацію на цьому екземплярі закрито.", "auth_and_oauth.registration_pending_approval": "Ця реєстрація очікує на схвалення адміністратором.", "auth_and_oauth.registration_rejected": "Цей запит на реєстрацію було відхилено.", @@ -115,6 +116,8 @@ const ERROR_I18N_UK_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Потрібен режим sudo.", "auth_and_oauth.unknown_application": "Невідомий застосунок.", "auth_and_oauth.unknown_origin_handoff": "Термін дії цього перенесення входу минув, або його вже використано.", + "auth_and_oauth.unknown_passkey_bridge": "Термін дії цього запиту ключа доступу минув. Спробуй ще раз.", + "auth_and_oauth.unknown_passkey_migration": "Зараз немає ключа доступу, який потрібно оновити.", "auth_and_registration.password_is_too_common": "Твій пароль занадто поширений. Обери менш передбачуваний пароль.", "auth_and_registration.password_not_set": "Пароль не встановлено.", "bots.bot_discriminator_cannot_be_changed": "Дискримінатор бота не можна змінити.", diff --git a/packages/errors/src/i18n/locales/vi.ts b/packages/errors/src/i18n/locales/vi.ts index 54c6193ab..3a3c9caab 100644 --- a/packages/errors/src/i18n/locales/vi.ts +++ b/packages/errors/src/i18n/locales/vi.ts @@ -102,6 +102,7 @@ const ERROR_I18N_VI_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "Header ủy quyền bị thiếu hoặc không hợp lệ.", "auth_and_oauth.must_start_session_before_sending_messages": "Bạn phải bắt đầu một phiên trước khi gửi tin nhắn.", "auth_and_oauth.origin_handoff_nonce_invalid": "Lần chuyển đăng nhập này không khớp với lần bạn đã bắt đầu.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Không thể xác nhận yêu cầu khóa truy cập này. Hãy thử lại.", "auth_and_oauth.registration_closed": "Đăng ký đã bị đóng trên phiên bản này.", "auth_and_oauth.registration_pending_approval": "Đăng ký này đang chờ quản trị viên phê duyệt.", "auth_and_oauth.registration_rejected": "Yêu cầu đăng ký này đã bị từ chối.", @@ -115,6 +116,8 @@ const ERROR_I18N_VI_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "Yêu cầu chế độ sudo.", "auth_and_oauth.unknown_application": "Ứng dụng không xác định.", "auth_and_oauth.unknown_origin_handoff": "Lần chuyển đăng nhập này đã hết hạn hoặc đã được sử dụng.", + "auth_and_oauth.unknown_passkey_bridge": "Yêu cầu khóa truy cập này đã hết hạn. Hãy thử lại.", + "auth_and_oauth.unknown_passkey_migration": "Hiện không có khóa truy cập nào cần cập nhật.", "auth_and_registration.password_is_too_common": "Mật khẩu của bạn quá phổ biến. Vui lòng chọn mật khẩu khó đoán hơn.", "auth_and_registration.password_not_set": "Mật khẩu chưa được đặt.", "bots.bot_discriminator_cannot_be_changed": "Không thể thay đổi mã phân biệt của bot.", diff --git a/packages/errors/src/i18n/locales/zh-CN.ts b/packages/errors/src/i18n/locales/zh-CN.ts index 903a298f1..e55a44272 100644 --- a/packages/errors/src/i18n/locales/zh-CN.ts +++ b/packages/errors/src/i18n/locales/zh-CN.ts @@ -102,6 +102,7 @@ const ERROR_I18N_ZH_CN_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "缺少或无效的授权请求头。", "auth_and_oauth.must_start_session_before_sending_messages": "你必须先开始会话才能发送消息。", "auth_and_oauth.origin_handoff_nonce_invalid": "此登录转移与你发起的不一致。", + "auth_and_oauth.passkey_bridge_nonce_invalid": "无法确认此通行密钥请求。请重试。", "auth_and_oauth.registration_closed": "此实例的注册已关闭。", "auth_and_oauth.registration_pending_approval": "此注册正在等待管理员批准。", "auth_and_oauth.registration_rejected": "此注册请求已被拒绝。", @@ -115,6 +116,8 @@ const ERROR_I18N_ZH_CN_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "需要 Sudo 模式。", "auth_and_oauth.unknown_application": "未知应用。", "auth_and_oauth.unknown_origin_handoff": "此登录转移已过期或已被使用。", + "auth_and_oauth.unknown_passkey_bridge": "此通行密钥请求已过期。请重试。", + "auth_and_oauth.unknown_passkey_migration": "目前没有需要更新的通行密钥。", "auth_and_registration.password_is_too_common": "你的密码太常见了。请换一个更难猜的密码。", "auth_and_registration.password_not_set": "密码未设置。", "bots.bot_discriminator_cannot_be_changed": "机器人识别码无法更改。", diff --git a/packages/errors/src/i18n/locales/zh-TW.ts b/packages/errors/src/i18n/locales/zh-TW.ts index 4e5b65200..75b4d1b18 100644 --- a/packages/errors/src/i18n/locales/zh-TW.ts +++ b/packages/errors/src/i18n/locales/zh-TW.ts @@ -102,6 +102,7 @@ const ERROR_I18N_ZH_TW_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.missing_authorization": "授權標頭遺失或無效。", "auth_and_oauth.must_start_session_before_sending_messages": "你必須先開始工作階段才能傳送訊息。", "auth_and_oauth.origin_handoff_nonce_invalid": "此登入轉移與您發起的不一致。", + "auth_and_oauth.passkey_bridge_nonce_invalid": "無法確認此通行金鑰要求。請再試一次。", "auth_and_oauth.registration_closed": "此實例已關閉註冊。", "auth_and_oauth.registration_pending_approval": "此註冊正在等待管理員核准。", "auth_and_oauth.registration_rejected": "此註冊要求已被拒絕。", @@ -115,6 +116,8 @@ const ERROR_I18N_ZH_TW_MESSAGES = defineErrorI18nLocaleMessages({ "auth_and_oauth.sudo_mode_required": "需要 Sudo 模式。", "auth_and_oauth.unknown_application": "不明應用程式。", "auth_and_oauth.unknown_origin_handoff": "此登入轉移已過期或已被使用。", + "auth_and_oauth.unknown_passkey_bridge": "此通行金鑰要求已過期。請再試一次。", + "auth_and_oauth.unknown_passkey_migration": "目前沒有需要更新的通行金鑰。", "auth_and_registration.password_is_too_common": "你的密碼太常見。請選擇較難預測的密碼。", "auth_and_registration.password_not_set": "密碼尚未設定。", "bots.bot_discriminator_cannot_be_changed": "機器人識別碼無法變更。", diff --git a/packages/errors/src/i18n/weblate/locales/ar.json b/packages/errors/src/i18n/weblate/locales/ar.json index 1c0afacaa..0c0e513af 100644 --- a/packages/errors/src/i18n/weblate/locales/ar.json +++ b/packages/errors/src/i18n/weblate/locales/ar.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "رأس التفويض مفقود أو غير صالح.", "auth_and_oauth.must_start_session_before_sending_messages": "يجب عليك بدء جلسة قبل إرسال الرسائل.", "auth_and_oauth.origin_handoff_nonce_invalid": "عملية نقل تسجيل الدخول هذه لا تطابق العملية التي بدأتها.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "تعذّر تأكيد طلب مفتاح المرور هذا. حاول مرة أخرى.", "auth_and_oauth.registration_closed": "التسجيل مغلق في هذا المثيل.", "auth_and_oauth.registration_pending_approval": "هذا التسجيل في انتظار موافقة المسؤول.", "auth_and_oauth.registration_rejected": "تم رفض طلب التسجيل هذا.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "وضع Sudo مطلوب.", "auth_and_oauth.unknown_application": "تطبيق غير معروف.", "auth_and_oauth.unknown_origin_handoff": "انتهت صلاحية عملية نقل تسجيل الدخول هذه أو تم استخدامها بالفعل.", + "auth_and_oauth.unknown_passkey_bridge": "انتهت صلاحية طلب مفتاح المرور هذا. حاول مرة أخرى.", + "auth_and_oauth.unknown_passkey_migration": "لا يوجد مفتاح مرور لتحديثه الآن.", "auth_and_registration.password_is_too_common": "كلمة مرورك شائعة جدًا. اختر كلمة مرور يصعب تخمينها.", "auth_and_registration.password_not_set": "لم تُعيّن كلمة المرور.", "bots.bot_discriminator_cannot_be_changed": "لا يمكن تغيير مميّز البوت.", diff --git a/packages/errors/src/i18n/weblate/locales/bg.json b/packages/errors/src/i18n/weblate/locales/bg.json index 5e17314bd..9e2ed525b 100644 --- a/packages/errors/src/i18n/weblate/locales/bg.json +++ b/packages/errors/src/i18n/weblate/locales/bg.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Липсваща или невалидна заглавка за оторизация.", "auth_and_oauth.must_start_session_before_sending_messages": "Трябва да започнеш сесия, преди да изпращаш съобщения.", "auth_and_oauth.origin_handoff_nonce_invalid": "Това прехвърляне на влизането не съвпада с започнатото от теб.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Тази заявка за ключ за достъп не можа да бъде потвърдена. Опитай отново.", "auth_and_oauth.registration_closed": "Регистрацията е затворена на тази инстанция.", "auth_and_oauth.registration_pending_approval": "Тази регистрация чака одобрение от администратор.", "auth_and_oauth.registration_rejected": "Тази заявка за регистрация беше отхвърлена.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Изисква се sudo режим.", "auth_and_oauth.unknown_application": "Неизвестно приложение.", "auth_and_oauth.unknown_origin_handoff": "Това прехвърляне на влизането е изтекло или вече е използвано.", + "auth_and_oauth.unknown_passkey_bridge": "Тази заявка за ключ за достъп е изтекла. Опитай отново.", + "auth_and_oauth.unknown_passkey_migration": "В момента няма ключ за достъп за актуализиране.", "auth_and_registration.password_is_too_common": "Паролата ти е твърде често срещана. Избери по-трудна за отгатване парола.", "auth_and_registration.password_not_set": "Паролата не е зададена.", "bots.bot_discriminator_cannot_be_changed": "Дискриминаторът на бота не може да се променя.", diff --git a/packages/errors/src/i18n/weblate/locales/cs.json b/packages/errors/src/i18n/weblate/locales/cs.json index 5c4f10386..de955a464 100644 --- a/packages/errors/src/i18n/weblate/locales/cs.json +++ b/packages/errors/src/i18n/weblate/locales/cs.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Chybí nebo je neplatná autorizační hlavička.", "auth_and_oauth.must_start_session_before_sending_messages": "Před odesíláním zpráv musíte zahájit relaci.", "auth_and_oauth.origin_handoff_nonce_invalid": "Tento přenos přihlášení neodpovídá tomu, který jste zahájili.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Tento požadavek na přístupový klíč se nepodařilo potvrdit. Zkuste to znovu.", "auth_and_oauth.registration_closed": "Registrace na této instanci je uzavřena.", "auth_and_oauth.registration_pending_approval": "Tato registrace čeká na schválení administrátorem.", "auth_and_oauth.registration_rejected": "Tato žádost o registraci byla zamítnuta.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Je vyžadován režim sudo.", "auth_and_oauth.unknown_application": "Neznámá aplikace.", "auth_and_oauth.unknown_origin_handoff": "Platnost tohoto přenosu přihlášení vypršela nebo už byl použit.", + "auth_and_oauth.unknown_passkey_bridge": "Platnost tohoto požadavku na přístupový klíč vypršela. Zkuste to znovu.", + "auth_and_oauth.unknown_passkey_migration": "Momentálně není žádný přístupový klíč k aktualizaci.", "auth_and_registration.password_is_too_common": "Vaše heslo je příliš běžné. Zvolte si hůře odhadnutelné heslo.", "auth_and_registration.password_not_set": "Heslo není nastavené.", "bots.bot_discriminator_cannot_be_changed": "Čtyřmístný identifikátor bota nelze změnit.", diff --git a/packages/errors/src/i18n/weblate/locales/da.json b/packages/errors/src/i18n/weblate/locales/da.json index 609bcc9b7..60c00edca 100644 --- a/packages/errors/src/i18n/weblate/locales/da.json +++ b/packages/errors/src/i18n/weblate/locales/da.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Manglende eller ugyldig godkendelsesheader.", "auth_and_oauth.must_start_session_before_sending_messages": "Du skal starte en session, før du sender beskeder.", "auth_and_oauth.origin_handoff_nonce_invalid": "Denne overførsel af login matcher ikke den, du startede.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Denne anmodning om adgangsnøgle kunne ikke bekræftes. Prøv igen.", "auth_and_oauth.registration_closed": "Tilmelding er lukket på denne instans.", "auth_and_oauth.registration_pending_approval": "Denne tilmelding afventer godkendelse fra administratoren.", "auth_and_oauth.registration_rejected": "Denne anmodning om tilmelding blev afvist.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo-tilstand er påkrævet.", "auth_and_oauth.unknown_application": "Ukendt applikation.", "auth_and_oauth.unknown_origin_handoff": "Denne overførsel af login er udløbet eller allerede brugt.", + "auth_and_oauth.unknown_passkey_bridge": "Denne anmodning om adgangsnøgle er udløbet. Prøv igen.", + "auth_and_oauth.unknown_passkey_migration": "Der er ingen adgangsnøgle at opdatere lige nu.", "auth_and_registration.password_is_too_common": "Din adgangskode er for almindelig. Vælg en adgangskode, der er sværere at gætte.", "auth_and_registration.password_not_set": "Der er ikke angivet nogen adgangskode.", "bots.bot_discriminator_cannot_be_changed": "En bots tag kan ikke ændres.", diff --git a/packages/errors/src/i18n/weblate/locales/de.json b/packages/errors/src/i18n/weblate/locales/de.json index 380ac08da..7b22041e4 100644 --- a/packages/errors/src/i18n/weblate/locales/de.json +++ b/packages/errors/src/i18n/weblate/locales/de.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Fehlender oder ungültiger Autorisierungsheader.", "auth_and_oauth.must_start_session_before_sending_messages": "Du musst eine Sitzung starten, bevor du Nachrichten senden kannst.", "auth_and_oauth.origin_handoff_nonce_invalid": "Diese Anmeldeübertragung stimmt nicht mit der von dir gestarteten überein.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Diese Passkey-Anfrage konnte nicht bestätigt werden. Versuche es erneut.", "auth_and_oauth.registration_closed": "Die Registrierung ist auf dieser Instanz geschlossen.", "auth_and_oauth.registration_pending_approval": "Diese Registrierung wartet auf die Genehmigung durch einen Administrator.", "auth_and_oauth.registration_rejected": "Diese Registrierungsanfrage wurde abgelehnt.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo-Modus ist erforderlich.", "auth_and_oauth.unknown_application": "Unbekannte Anwendung.", "auth_and_oauth.unknown_origin_handoff": "Diese Anmeldeübertragung ist abgelaufen oder wurde bereits verwendet.", + "auth_and_oauth.unknown_passkey_bridge": "Diese Passkey-Anfrage ist abgelaufen. Versuche es erneut.", + "auth_and_oauth.unknown_passkey_migration": "Gerade gibt es keinen Passkey zum Aktualisieren.", "auth_and_registration.password_is_too_common": "Dein Passwort wird zu häufig verwendet. Wähle bitte ein Passwort, das weniger leicht zu erraten ist.", "auth_and_registration.password_not_set": "Das Passwort ist nicht festgelegt.", "bots.bot_discriminator_cannot_be_changed": "Der Bot-Discriminator kann nicht geändert werden.", diff --git a/packages/errors/src/i18n/weblate/locales/el.json b/packages/errors/src/i18n/weblate/locales/el.json index bf8fa8440..9442e4479 100644 --- a/packages/errors/src/i18n/weblate/locales/el.json +++ b/packages/errors/src/i18n/weblate/locales/el.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Λείπει ή είναι άκυρη η κεφαλίδα εξουσιοδότησης.", "auth_and_oauth.must_start_session_before_sending_messages": "Πρέπει να ξεκινήσεις συνεδρία πριν στείλεις μηνύματα.", "auth_and_oauth.origin_handoff_nonce_invalid": "Αυτή η μεταφορά σύνδεσης δεν αντιστοιχεί σε αυτήν που ξεκινήσατε.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Δεν ήταν δυνατή η επιβεβαίωση αυτού του αιτήματος κλειδιού πρόσβασης. Δοκίμασε ξανά.", "auth_and_oauth.registration_closed": "Η εγγραφή είναι κλειστή σε αυτήν την εγκατάσταση.", "auth_and_oauth.registration_pending_approval": "Αυτή η εγγραφή περιμένει έγκριση από τον διαχειριστή.", "auth_and_oauth.registration_rejected": "Αυτό το αίτημα εγγραφής απορρίφθηκε.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Απαιτείται η λειτουργία sudo.", "auth_and_oauth.unknown_application": "Άγνωστη εφαρμογή.", "auth_and_oauth.unknown_origin_handoff": "Αυτή η μεταφορά σύνδεσης έχει λήξει ή έχει ήδη χρησιμοποιηθεί.", + "auth_and_oauth.unknown_passkey_bridge": "Αυτό το αίτημα κλειδιού πρόσβασης έχει λήξει. Δοκίμασε ξανά.", + "auth_and_oauth.unknown_passkey_migration": "Δεν υπάρχει κλειδί πρόσβασης για ενημέρωση αυτή τη στιγμή.", "auth_and_registration.password_is_too_common": "Ο κωδικός πρόσβασής σου είναι πολύ κοινός. Διάλεξε έναν λιγότερο προβλέψιμο κωδικό πρόσβασης.", "auth_and_registration.password_not_set": "Ο κωδικός πρόσβασης δεν έχει οριστεί.", "bots.bot_discriminator_cannot_be_changed": "Το διακριτικό του bot δεν μπορεί να αλλάξει.", diff --git a/packages/errors/src/i18n/weblate/locales/en-GB.json b/packages/errors/src/i18n/weblate/locales/en-GB.json index fae359958..8c7717087 100644 --- a/packages/errors/src/i18n/weblate/locales/en-GB.json +++ b/packages/errors/src/i18n/weblate/locales/en-GB.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Missing or invalid authorisation header.", "auth_and_oauth.must_start_session_before_sending_messages": "You must start a session before sending messages.", "auth_and_oauth.origin_handoff_nonce_invalid": "This sign-in transfer doesn't match the one you started.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "This passkey request could not be confirmed. Try again.", "auth_and_oauth.registration_closed": "Registration is closed on this instance.", "auth_and_oauth.registration_pending_approval": "This registration is waiting for admin approval.", "auth_and_oauth.registration_rejected": "This registration request was rejected.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo mode is required.", "auth_and_oauth.unknown_application": "Unknown application.", "auth_and_oauth.unknown_origin_handoff": "This sign-in transfer has expired or was already used.", + "auth_and_oauth.unknown_passkey_bridge": "This passkey request has expired. Try again.", + "auth_and_oauth.unknown_passkey_migration": "There is no passkey to update right now.", "auth_and_registration.password_is_too_common": "Your password is too common. Please choose a less predictable password.", "auth_and_registration.password_not_set": "Password isn't set.", "bots.bot_discriminator_cannot_be_changed": "Bot discriminator can't be changed.", diff --git a/packages/errors/src/i18n/weblate/locales/es-419.json b/packages/errors/src/i18n/weblate/locales/es-419.json index d7240ca90..ed5e0ed58 100644 --- a/packages/errors/src/i18n/weblate/locales/es-419.json +++ b/packages/errors/src/i18n/weblate/locales/es-419.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Falta el encabezado de autorización o no es válido.", "auth_and_oauth.must_start_session_before_sending_messages": "Debes iniciar una sesión antes de enviar mensajes.", "auth_and_oauth.origin_handoff_nonce_invalid": "Esta transferencia de inicio de sesión no coincide con la que iniciaste.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "No se pudo confirmar esta solicitud de llave de acceso. Inténtalo de nuevo.", "auth_and_oauth.registration_closed": "El registro está cerrado en esta instancia.", "auth_and_oauth.registration_pending_approval": "Este registro está esperando la aprobación del administrador.", "auth_and_oauth.registration_rejected": "Esta solicitud de registro fue rechazada.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Se requiere el modo sudo.", "auth_and_oauth.unknown_application": "Aplicación desconocida.", "auth_and_oauth.unknown_origin_handoff": "Esta transferencia de inicio de sesión caducó o ya se usó.", + "auth_and_oauth.unknown_passkey_bridge": "Esta solicitud de llave de acceso caducó. Inténtalo de nuevo.", + "auth_and_oauth.unknown_passkey_migration": "No hay ninguna llave de acceso para actualizar en este momento.", "auth_and_registration.password_is_too_common": "Tu contraseña es demasiado común. Elige una contraseña menos predecible.", "auth_and_registration.password_not_set": "La contraseña no está configurada.", "bots.bot_discriminator_cannot_be_changed": "El discriminador del bot no se puede cambiar.", diff --git a/packages/errors/src/i18n/weblate/locales/es-ES.json b/packages/errors/src/i18n/weblate/locales/es-ES.json index 7792ad82a..98e8ef3c4 100644 --- a/packages/errors/src/i18n/weblate/locales/es-ES.json +++ b/packages/errors/src/i18n/weblate/locales/es-ES.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Falta la cabecera de autorización o no es válida.", "auth_and_oauth.must_start_session_before_sending_messages": "Debes iniciar sesión antes de enviar mensajes.", "auth_and_oauth.origin_handoff_nonce_invalid": "Esta transferencia de inicio de sesión no coincide con la que iniciaste.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "No se ha podido confirmar esta solicitud de clave de acceso. Inténtalo de nuevo.", "auth_and_oauth.registration_closed": "El registro está cerrado en esta instancia.", "auth_and_oauth.registration_pending_approval": "Este registro está pendiente de aprobación por parte del administrador.", "auth_and_oauth.registration_rejected": "Esta solicitud de registro ha sido rechazada.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Se requiere el modo sudo.", "auth_and_oauth.unknown_application": "Aplicación desconocida.", "auth_and_oauth.unknown_origin_handoff": "Esta transferencia de inicio de sesión ha caducado o ya se ha usado.", + "auth_and_oauth.unknown_passkey_bridge": "Esta solicitud de clave de acceso ha caducado. Inténtalo de nuevo.", + "auth_and_oauth.unknown_passkey_migration": "Ahora mismo no hay ninguna clave de acceso que actualizar.", "auth_and_registration.password_is_too_common": "Tu contraseña es demasiado común. Elige una contraseña menos predecible.", "auth_and_registration.password_not_set": "La contraseña no está establecida.", "bots.bot_discriminator_cannot_be_changed": "El discriminador del bot no se puede cambiar.", diff --git a/packages/errors/src/i18n/weblate/locales/fi.json b/packages/errors/src/i18n/weblate/locales/fi.json index 884af858a..eefe5b968 100644 --- a/packages/errors/src/i18n/weblate/locales/fi.json +++ b/packages/errors/src/i18n/weblate/locales/fi.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Valtuutusotsake puuttuu tai on virheellinen.", "auth_and_oauth.must_start_session_before_sending_messages": "Sinun on aloitettava istunto ennen viestien lähettämistä.", "auth_and_oauth.origin_handoff_nonce_invalid": "Tämä kirjautumisen siirto ei vastaa aloittamaasi siirtoa.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Tätä pääsyavainpyyntöä ei voitu vahvistaa. Yritä uudelleen.", "auth_and_oauth.registration_closed": "Rekisteröinti on suljettu tällä instanssilla.", "auth_and_oauth.registration_pending_approval": "Tämä rekisteröinti odottaa järjestelmänvalvojan hyväksyntää.", "auth_and_oauth.registration_rejected": "Tämä rekisteröintipyyntö hylättiin.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo-tila vaaditaan.", "auth_and_oauth.unknown_application": "Tuntematon sovellus.", "auth_and_oauth.unknown_origin_handoff": "Tämä kirjautumisen siirto on vanhentunut tai jo käytetty.", + "auth_and_oauth.unknown_passkey_bridge": "Tämä pääsyavainpyyntö on vanhentunut. Yritä uudelleen.", + "auth_and_oauth.unknown_passkey_migration": "Päivitettävää pääsyavainta ei ole juuri nyt.", "auth_and_registration.password_is_too_common": "Salasanasi on liian yleinen. Valitse vaikeammin arvattava salasana.", "auth_and_registration.password_not_set": "Salasanaa ei ole asetettu.", "bots.bot_discriminator_cannot_be_changed": "Botin nelinumeroista tunnistetta ei voi muuttaa.", diff --git a/packages/errors/src/i18n/weblate/locales/fr.json b/packages/errors/src/i18n/weblate/locales/fr.json index e8563c45e..be1df7331 100644 --- a/packages/errors/src/i18n/weblate/locales/fr.json +++ b/packages/errors/src/i18n/weblate/locales/fr.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "En-tête d'autorisation manquant ou non valide.", "auth_and_oauth.must_start_session_before_sending_messages": "Vous devez démarrer une session avant d’envoyer des messages.", "auth_and_oauth.origin_handoff_nonce_invalid": "Ce transfert de connexion ne correspond pas à celui que vous avez lancé.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Cette demande de clé d'accès n'a pas pu être confirmée. Réessayez.", "auth_and_oauth.registration_closed": "L'inscription est fermée sur cette instance.", "auth_and_oauth.registration_pending_approval": "Cette inscription est en attente d'approbation par un administrateur.", "auth_and_oauth.registration_rejected": "Cette demande d'inscription a été rejetée.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Le mode Sudo est requis.", "auth_and_oauth.unknown_application": "Application inconnue.", "auth_and_oauth.unknown_origin_handoff": "Ce transfert de connexion a expiré ou a déjà été utilisé.", + "auth_and_oauth.unknown_passkey_bridge": "Cette demande de clé d'accès a expiré. Réessayez.", + "auth_and_oauth.unknown_passkey_migration": "Il n'y a aucune clé d'accès à mettre à jour pour le moment.", "auth_and_registration.password_is_too_common": "Votre mot de passe est trop courant. Choisissez-en un moins prévisible.", "auth_and_registration.password_not_set": "Le mot de passe n'est pas défini.", "bots.bot_discriminator_cannot_be_changed": "Le discriminateur du bot ne peut pas être modifié.", diff --git a/packages/errors/src/i18n/weblate/locales/he.json b/packages/errors/src/i18n/weblate/locales/he.json index bffa2e6d8..670e9a4e4 100644 --- a/packages/errors/src/i18n/weblate/locales/he.json +++ b/packages/errors/src/i18n/weblate/locales/he.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "כותרת ההרשאה חסרה או שגויה.", "auth_and_oauth.must_start_session_before_sending_messages": "יש להתחיל סשן לפני שליחת הודעות.", "auth_and_oauth.origin_handoff_nonce_invalid": "העברת ההתחברות הזו אינה תואמת לזו שהתחלת.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "לא הצלחנו לאשר את בקשת מפתח הגישה הזו. ניתן לנסות שוב.", "auth_and_oauth.registration_closed": "ההרשמה סגורה במופע זה.", "auth_and_oauth.registration_pending_approval": "הרשמה זו ממתינה לאישור מנהל.", "auth_and_oauth.registration_rejected": "בקשת הרשמה זו נדחתה.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "נדרש מצב sudo.", "auth_and_oauth.unknown_application": "אפליקציה לא ידועה.", "auth_and_oauth.unknown_origin_handoff": "פג תוקפה של העברת ההתחברות הזו או שכבר נעשה בה שימוש.", + "auth_and_oauth.unknown_passkey_bridge": "תוקף בקשת מפתח הגישה הזו פג. ניתן לנסות שוב.", + "auth_and_oauth.unknown_passkey_migration": "אין כרגע מפתח גישה לעדכון.", "auth_and_registration.password_is_too_common": "הסיסמה שלך נפוצה מדי. מומלץ לבחור סיסמה פחות צפויה.", "auth_and_registration.password_not_set": "סיסמה לא הוגדרה.", "bots.bot_discriminator_cannot_be_changed": "לא ניתן לשנות את המזהה של הבוט.", diff --git a/packages/errors/src/i18n/weblate/locales/hi.json b/packages/errors/src/i18n/weblate/locales/hi.json index cfb05e003..741542e9a 100644 --- a/packages/errors/src/i18n/weblate/locales/hi.json +++ b/packages/errors/src/i18n/weblate/locales/hi.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "ऑथराइज़ेशन हेडर गायब या अमान्य है।", "auth_and_oauth.must_start_session_before_sending_messages": "मैसेज भेजने से पहले आपको एक सेशन शुरू करना होगा।", "auth_and_oauth.origin_handoff_nonce_invalid": "यह साइन-इन ट्रांसफ़र आपके द्वारा शुरू किए गए ट्रांसफ़र से मेल नहीं खाता।", + "auth_and_oauth.passkey_bridge_nonce_invalid": "इस पासकी अनुरोध की पुष्टि नहीं हो सकी। फिर से कोशिश करें।", "auth_and_oauth.registration_closed": "इस इंस्टेंस पर रजिस्ट्रेशन बंद है।", "auth_and_oauth.registration_pending_approval": "यह रजिस्ट्रेशन एडमिन अप्रूवल का इंतज़ार कर रहा है।", "auth_and_oauth.registration_rejected": "यह रजिस्ट्रेशन रिक्वेस्ट रिजेक्ट कर दी गई है।", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "सुडो मोड ज़रूरी है।", "auth_and_oauth.unknown_application": "अज्ञात एप्लीकेशन।", "auth_and_oauth.unknown_origin_handoff": "यह साइन-इन ट्रांसफ़र समाप्त हो गया है या पहले ही उपयोग किया जा चुका है।", + "auth_and_oauth.unknown_passkey_bridge": "इस पासकी अनुरोध की समय-सीमा समाप्त हो गई है। फिर से कोशिश करें।", + "auth_and_oauth.unknown_passkey_migration": "अभी अपडेट करने के लिए कोई पासकी नहीं है।", "auth_and_registration.password_is_too_common": "आपका पासवर्ड बहुत कॉमन है। कृपया ऐसा पासवर्ड चुनें जिसका अंदाज़ा लगाना मुश्किल हो।", "auth_and_registration.password_not_set": "पासवर्ड सेट नहीं है।", "bots.bot_discriminator_cannot_be_changed": "बॉट डिस्क्रिमिनेटर को बदला नहीं जा सकता।", diff --git a/packages/errors/src/i18n/weblate/locales/hr.json b/packages/errors/src/i18n/weblate/locales/hr.json index c30754430..8da2573e4 100644 --- a/packages/errors/src/i18n/weblate/locales/hr.json +++ b/packages/errors/src/i18n/weblate/locales/hr.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Nedostaje ili je nevažeće autorizacijsko zaglavlje.", "auth_and_oauth.must_start_session_before_sending_messages": "Moraš započeti sesiju prije slanja poruka.", "auth_and_oauth.origin_handoff_nonce_invalid": "Ovaj prijenos prijave ne odgovara onome koji ste započeli.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Ovaj zahtjev za pristupni ključ nije moguće potvrditi. Pokušaj ponovno.", "auth_and_oauth.registration_closed": "Registracija je zatvorena na ovoj instanci.", "auth_and_oauth.registration_pending_approval": "Ova registracija čeka odobrenje administratora.", "auth_and_oauth.registration_rejected": "Ovaj zahtjev za registraciju je odbijen.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Potreban je sudo način rada.", "auth_and_oauth.unknown_application": "Nepoznata aplikacija.", "auth_and_oauth.unknown_origin_handoff": "Ovaj prijenos prijave je istekao ili je već iskorišten.", + "auth_and_oauth.unknown_passkey_bridge": "Ovaj je zahtjev za pristupni ključ istekao. Pokušaj ponovno.", + "auth_and_oauth.unknown_passkey_migration": "Trenutačno nema pristupnog ključa za ažuriranje.", "auth_and_registration.password_is_too_common": "Tvoja je lozinka previše uobičajena. Odaberi manje predvidljivu lozinku.", "auth_and_registration.password_not_set": "Lozinka nije postavljena.", "bots.bot_discriminator_cannot_be_changed": "Diskriminator bota ne može se promijeniti.", diff --git a/packages/errors/src/i18n/weblate/locales/hu.json b/packages/errors/src/i18n/weblate/locales/hu.json index 717145882..248bfa162 100644 --- a/packages/errors/src/i18n/weblate/locales/hu.json +++ b/packages/errors/src/i18n/weblate/locales/hu.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Hiányzó vagy érvénytelen hitelesítési fejléc.", "auth_and_oauth.must_start_session_before_sending_messages": "Üzenetek küldéséhez előbb munkamenetet kell indítanod.", "auth_and_oauth.origin_handoff_nonce_invalid": "Ez a bejelentkezés-átvitel nem egyezik azzal, amelyet elindítottál.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Ezt a jelszókulcs-kérést nem sikerült megerősíteni. Próbáld újra.", "auth_and_oauth.registration_closed": "Ezen a példányon a regisztráció le van zárva.", "auth_and_oauth.registration_pending_approval": "Ez a regisztráció rendszergazdai jóváhagyásra vár.", "auth_and_oauth.registration_rejected": "Ez a regisztrációs kérelem el lett utasítva.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo mód szükséges.", "auth_and_oauth.unknown_application": "Ismeretlen alkalmazás.", "auth_and_oauth.unknown_origin_handoff": "Ez a bejelentkezés-átvitel lejárt, vagy már felhasználták.", + "auth_and_oauth.unknown_passkey_bridge": "Ez a jelszókulcs-kérés lejárt. Próbáld újra.", + "auth_and_oauth.unknown_passkey_migration": "Jelenleg nincs frissítendő jelszókulcs.", "auth_and_registration.password_is_too_common": "A jelszavad túl gyakori. Válassz nehezebben kitalálható jelszót.", "auth_and_registration.password_not_set": "Nincs beállítva jelszó.", "bots.bot_discriminator_cannot_be_changed": "A bot számazonosítója nem módosítható.", diff --git a/packages/errors/src/i18n/weblate/locales/id.json b/packages/errors/src/i18n/weblate/locales/id.json index cd3a519f8..e2430eeb2 100644 --- a/packages/errors/src/i18n/weblate/locales/id.json +++ b/packages/errors/src/i18n/weblate/locales/id.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Header otorisasi hilang atau tidak valid.", "auth_and_oauth.must_start_session_before_sending_messages": "Kamu harus memulai sesi sebelum mengirim pesan.", "auth_and_oauth.origin_handoff_nonce_invalid": "Transfer masuk ini tidak cocok dengan yang kamu mulai.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Permintaan passkey ini tidak dapat dikonfirmasi. Coba lagi.", "auth_and_oauth.registration_closed": "Pendaftaran ditutup di instance ini.", "auth_and_oauth.registration_pending_approval": "Pendaftaran ini menunggu persetujuan admin.", "auth_and_oauth.registration_rejected": "Permintaan pendaftaran ini ditolak.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Mode sudo diperlukan.", "auth_and_oauth.unknown_application": "Aplikasi tidak dikenal.", "auth_and_oauth.unknown_origin_handoff": "Transfer masuk ini sudah kedaluwarsa atau sudah digunakan.", + "auth_and_oauth.unknown_passkey_bridge": "Permintaan passkey ini sudah kedaluwarsa. Coba lagi.", + "auth_and_oauth.unknown_passkey_migration": "Saat ini tidak ada passkey yang perlu diperbarui.", "auth_and_registration.password_is_too_common": "Kata sandimu terlalu umum. Pilih kata sandi yang lebih sulit ditebak.", "auth_and_registration.password_not_set": "Kata sandi belum diatur.", "bots.bot_discriminator_cannot_be_changed": "Diskriminator bot tidak dapat diubah.", diff --git a/packages/errors/src/i18n/weblate/locales/it.json b/packages/errors/src/i18n/weblate/locales/it.json index a1b28be68..7d52559a5 100644 --- a/packages/errors/src/i18n/weblate/locales/it.json +++ b/packages/errors/src/i18n/weblate/locales/it.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Header di autorizzazione mancante o non valido.", "auth_and_oauth.must_start_session_before_sending_messages": "Devi avviare una sessione prima di inviare messaggi.", "auth_and_oauth.origin_handoff_nonce_invalid": "Questo trasferimento di accesso non corrisponde a quello che hai avviato.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Non è stato possibile confermare questa richiesta di passkey. Riprova.", "auth_and_oauth.registration_closed": "La registrazione è chiusa su questa istanza.", "auth_and_oauth.registration_pending_approval": "Questa registrazione è in attesa dell'approvazione dell'amministratore.", "auth_and_oauth.registration_rejected": "Questa richiesta di registrazione è stata rifiutata.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "La modalità Sudo è richiesta.", "auth_and_oauth.unknown_application": "Applicazione sconosciuta.", "auth_and_oauth.unknown_origin_handoff": "Questo trasferimento di accesso è scaduto o è già stato usato.", + "auth_and_oauth.unknown_passkey_bridge": "Questa richiesta di passkey è scaduta. Riprova.", + "auth_and_oauth.unknown_passkey_migration": "Al momento non c'è nessuna passkey da aggiornare.", "auth_and_registration.password_is_too_common": "La tua password è troppo comune. Scegli una password meno prevedibile.", "auth_and_registration.password_not_set": "La password non è impostata.", "bots.bot_discriminator_cannot_be_changed": "Il discriminatore del bot non può essere modificato.", diff --git a/packages/errors/src/i18n/weblate/locales/ja.json b/packages/errors/src/i18n/weblate/locales/ja.json index 9b5c7dd21..f475816a1 100644 --- a/packages/errors/src/i18n/weblate/locales/ja.json +++ b/packages/errors/src/i18n/weblate/locales/ja.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "認証ヘッダーが見つからないか、無効です。", "auth_and_oauth.must_start_session_before_sending_messages": "メッセージを送信する前にセッションを開始してください。", "auth_and_oauth.origin_handoff_nonce_invalid": "このサインインの引き継ぎは、開始したものと一致しません。", + "auth_and_oauth.passkey_bridge_nonce_invalid": "このパスキーのリクエストを確認できませんでした。もう一度お試しください。", "auth_and_oauth.registration_closed": "このインスタンスでは新規登録を受け付けていません。", "auth_and_oauth.registration_pending_approval": "この登録は管理者による承認待ちです。", "auth_and_oauth.registration_rejected": "この登録リクエストは拒否されました。", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudoモードが必要です。", "auth_and_oauth.unknown_application": "不明なアプリケーションです。", "auth_and_oauth.unknown_origin_handoff": "このサインインの引き継ぎは期限切れか、すでに使用されています。", + "auth_and_oauth.unknown_passkey_bridge": "このパスキーのリクエストは期限切れです。もう一度お試しください。", + "auth_and_oauth.unknown_passkey_migration": "現在、更新するパスキーはありません。", "auth_and_registration.password_is_too_common": "パスワードが一般的すぎます。より推測されにくいパスワードを設定してください。", "auth_and_registration.password_not_set": "パスワードが未設定です。", "bots.bot_discriminator_cannot_be_changed": "ボットの識別子は変更できません。", diff --git a/packages/errors/src/i18n/weblate/locales/ko.json b/packages/errors/src/i18n/weblate/locales/ko.json index adb0cf923..04d68a851 100644 --- a/packages/errors/src/i18n/weblate/locales/ko.json +++ b/packages/errors/src/i18n/weblate/locales/ko.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "인증 헤더가 없거나 유효하지 않아요.", "auth_and_oauth.must_start_session_before_sending_messages": "메시지를 보내기 전에 세션을 시작해야 해요.", "auth_and_oauth.origin_handoff_nonce_invalid": "이 로그인 이전 요청이 시작하신 요청과 일치하지 않습니다.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "이 패스키 요청을 확인하지 못했어요. 다시 시도해 주세요.", "auth_and_oauth.registration_closed": "이 인스턴스에서는 가입을 받고 있지 않아요.", "auth_and_oauth.registration_pending_approval": "이 가입 신청은 관리자 승인을 기다리고 있어요.", "auth_and_oauth.registration_rejected": "이 가입 요청은 거부되었어요.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo 모드가 필요해요.", "auth_and_oauth.unknown_application": "알 수 없는 애플리케이션이에요.", "auth_and_oauth.unknown_origin_handoff": "이 로그인 이전 요청이 만료되었거나 이미 사용되었습니다.", + "auth_and_oauth.unknown_passkey_bridge": "이 패스키 요청이 만료되었어요. 다시 시도해 주세요.", + "auth_and_oauth.unknown_passkey_migration": "지금은 업데이트할 패스키가 없어요.", "auth_and_registration.password_is_too_common": "비밀번호가 너무 흔해요. 추측하기 어려운 비밀번호를 사용해 주세요.", "auth_and_registration.password_not_set": "비밀번호가 설정되지 않았어요.", "bots.bot_discriminator_cannot_be_changed": "봇 디스크리미네이터를 변경할 수 없어요.", diff --git a/packages/errors/src/i18n/weblate/locales/lt.json b/packages/errors/src/i18n/weblate/locales/lt.json index 17883d48c..6b012d634 100644 --- a/packages/errors/src/i18n/weblate/locales/lt.json +++ b/packages/errors/src/i18n/weblate/locales/lt.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Trūksta autorizacijos antraštės arba ji neteisinga.", "auth_and_oauth.must_start_session_before_sending_messages": "Kad galėtum siųsti žinutes, pirmiausia pradėk seansą.", "auth_and_oauth.origin_handoff_nonce_invalid": "Šis prisijungimo perkėlimas nesutampa su tuo, kurį pradėjote.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Nepavyko patvirtinti šios prieigos rakto užklausos. Bandyk dar kartą.", "auth_and_oauth.registration_closed": "Registracija šioje instancijoje yra uždaryta.", "auth_and_oauth.registration_pending_approval": "Ši registracija laukia administratoriaus patvirtinimo.", "auth_and_oauth.registration_rejected": "Šis registracijos prašymas buvo atmestas.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Reikalingas sudo režimas.", "auth_and_oauth.unknown_application": "Nežinoma programa.", "auth_and_oauth.unknown_origin_handoff": "Šio prisijungimo perkėlimo galiojimas baigėsi arba jis jau panaudotas.", + "auth_and_oauth.unknown_passkey_bridge": "Šios prieigos rakto užklausos galiojimas baigėsi. Bandyk dar kartą.", + "auth_and_oauth.unknown_passkey_migration": "Šiuo metu nėra prieigos rakto, kurį reikėtų atnaujinti.", "auth_and_registration.password_is_too_common": "Tavo slaptažodis per dažnai naudojamas. Pasirink sunkiau nuspėjamą slaptažodį.", "auth_and_registration.password_not_set": "Slaptažodis nenustatytas.", "bots.bot_discriminator_cannot_be_changed": "Boto diskriminatoriaus negalima pakeisti.", diff --git a/packages/errors/src/i18n/weblate/locales/nl.json b/packages/errors/src/i18n/weblate/locales/nl.json index 64d988fd4..fc9feebd8 100644 --- a/packages/errors/src/i18n/weblate/locales/nl.json +++ b/packages/errors/src/i18n/weblate/locales/nl.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "De autorisatieheader ontbreekt of is ongeldig.", "auth_and_oauth.must_start_session_before_sending_messages": "Je moet een sessie starten voordat je berichten kunt verzenden.", "auth_and_oauth.origin_handoff_nonce_invalid": "Deze aanmeldoverdracht komt niet overeen met de overdracht die je hebt gestart.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Dit passkey-verzoek kon niet worden bevestigd. Probeer het opnieuw.", "auth_and_oauth.registration_closed": "Registratie is gesloten op deze instantie.", "auth_and_oauth.registration_pending_approval": "Deze registratie wacht op goedkeuring van de beheerder.", "auth_and_oauth.registration_rejected": "Dit registratieverzoek is afgewezen.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo-modus is vereist.", "auth_and_oauth.unknown_application": "Onbekende app.", "auth_and_oauth.unknown_origin_handoff": "Deze aanmeldoverdracht is verlopen of al gebruikt.", + "auth_and_oauth.unknown_passkey_bridge": "Dit passkey-verzoek is verlopen. Probeer het opnieuw.", + "auth_and_oauth.unknown_passkey_migration": "Er is op dit moment geen passkey om bij te werken.", "auth_and_registration.password_is_too_common": "Je wachtwoord komt te vaak voor. Kies een minder voorspelbaar wachtwoord.", "auth_and_registration.password_not_set": "Wachtwoord is niet ingesteld.", "bots.bot_discriminator_cannot_be_changed": "De discriminator van een bot kan niet worden gewijzigd.", diff --git a/packages/errors/src/i18n/weblate/locales/no.json b/packages/errors/src/i18n/weblate/locales/no.json index 349dc1a8e..54ef5d4e3 100644 --- a/packages/errors/src/i18n/weblate/locales/no.json +++ b/packages/errors/src/i18n/weblate/locales/no.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Autorisasjonsheaderen mangler eller er ugyldig.", "auth_and_oauth.must_start_session_before_sending_messages": "Du må starte en økt før du sender meldinger.", "auth_and_oauth.origin_handoff_nonce_invalid": "Denne overføringen av påloggingen samsvarer ikke med den du startet.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Denne forespørselen om passnøkkel kunne ikke bekreftes. Prøv igjen.", "auth_and_oauth.registration_closed": "Registrering er stengt på denne instansen.", "auth_and_oauth.registration_pending_approval": "Denne registreringen venter på administratorgodkjenning.", "auth_and_oauth.registration_rejected": "Denne registreringsforespørselen ble avvist.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo-modus er påkrevd.", "auth_and_oauth.unknown_application": "Ukjent app.", "auth_and_oauth.unknown_origin_handoff": "Denne overføringen av påloggingen er utløpt eller allerede brukt.", + "auth_and_oauth.unknown_passkey_bridge": "Denne forespørselen om passnøkkel er utløpt. Prøv igjen.", + "auth_and_oauth.unknown_passkey_migration": "Det er ingen passnøkkel å oppdatere akkurat nå.", "auth_and_registration.password_is_too_common": "Passordet ditt er for vanlig. Velg et passord som er vanskeligere å gjette.", "auth_and_registration.password_not_set": "Det er ikke angitt noe passord.", "bots.bot_discriminator_cannot_be_changed": "Botens diskriminator kan ikke endres.", diff --git a/packages/errors/src/i18n/weblate/locales/pl.json b/packages/errors/src/i18n/weblate/locales/pl.json index b1f1419c8..ade92ff24 100644 --- a/packages/errors/src/i18n/weblate/locales/pl.json +++ b/packages/errors/src/i18n/weblate/locales/pl.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Brakuje nagłówka autoryzacji lub jest on nieprawidłowy.", "auth_and_oauth.must_start_session_before_sending_messages": "Musisz rozpocząć sesję, zanim wyślesz wiadomości.", "auth_and_oauth.origin_handoff_nonce_invalid": "To przeniesienie logowania nie pasuje do tego, które zostało rozpoczęte.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Nie udało się potwierdzić tego żądania klucza dostępu. Spróbuj ponownie.", "auth_and_oauth.registration_closed": "Rejestracja na tej instancji jest zamknięta.", "auth_and_oauth.registration_pending_approval": "Ta rejestracja czeka na zatwierdzenie przez administratora.", "auth_and_oauth.registration_rejected": "Ten wniosek o rejestrację został odrzucony.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Wymagany tryb sudo.", "auth_and_oauth.unknown_application": "Nieznana aplikacja.", "auth_and_oauth.unknown_origin_handoff": "To przeniesienie logowania wygasło lub zostało już użyte.", + "auth_and_oauth.unknown_passkey_bridge": "To żądanie klucza dostępu wygasło. Spróbuj ponownie.", + "auth_and_oauth.unknown_passkey_migration": "Obecnie nie ma klucza dostępu do zaktualizowania.", "auth_and_registration.password_is_too_common": "Twoje hasło jest zbyt popularne. Wybierz mniej przewidywalne hasło.", "auth_and_registration.password_not_set": "Hasło nie jest ustawione.", "bots.bot_discriminator_cannot_be_changed": "Nie można zmienić dyskryminatora bota.", diff --git a/packages/errors/src/i18n/weblate/locales/pt-BR.json b/packages/errors/src/i18n/weblate/locales/pt-BR.json index a19e6b6d8..3bcd34351 100644 --- a/packages/errors/src/i18n/weblate/locales/pt-BR.json +++ b/packages/errors/src/i18n/weblate/locales/pt-BR.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Cabeçalho de autorização ausente ou inválido.", "auth_and_oauth.must_start_session_before_sending_messages": "Você deve iniciar uma sessão antes de enviar mensagens.", "auth_and_oauth.origin_handoff_nonce_invalid": "Esta transferência de login não corresponde à que você iniciou.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Não foi possível confirmar esta solicitação de chave de acesso. Tente novamente.", "auth_and_oauth.registration_closed": "O cadastro está fechado nesta instância.", "auth_and_oauth.registration_pending_approval": "Este cadastro está aguardando a aprovação de um administrador.", "auth_and_oauth.registration_rejected": "Esta solicitação de cadastro foi rejeitada.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "O modo sudo é obrigatório.", "auth_and_oauth.unknown_application": "Aplicativo desconhecido.", "auth_and_oauth.unknown_origin_handoff": "Esta transferência de login expirou ou já foi usada.", + "auth_and_oauth.unknown_passkey_bridge": "Esta solicitação de chave de acesso expirou. Tente novamente.", + "auth_and_oauth.unknown_passkey_migration": "Não há nenhuma chave de acesso para atualizar agora.", "auth_and_registration.password_is_too_common": "Sua senha é muito comum. Escolha uma senha menos previsível.", "auth_and_registration.password_not_set": "A senha não foi definida.", "bots.bot_discriminator_cannot_be_changed": "O discriminador do bot não pode ser alterado.", diff --git a/packages/errors/src/i18n/weblate/locales/ro.json b/packages/errors/src/i18n/weblate/locales/ro.json index 4f2762c06..b60baa133 100644 --- a/packages/errors/src/i18n/weblate/locales/ro.json +++ b/packages/errors/src/i18n/weblate/locales/ro.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Headerul de autorizare lipsește sau este invalid.", "auth_and_oauth.must_start_session_before_sending_messages": "Trebuie să începi o sesiune înainte de a trimite mesaje.", "auth_and_oauth.origin_handoff_nonce_invalid": "Acest transfer de autentificare nu corespunde celui pe care l-ai început.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Această cerere pentru cheia de acces nu a putut fi confirmată. Încearcă din nou.", "auth_and_oauth.registration_closed": "Înregistrarea este închisă pe această instanță.", "auth_and_oauth.registration_pending_approval": "Această înregistrare așteaptă aprobarea administratorului.", "auth_and_oauth.registration_rejected": "Această cerere de înregistrare a fost respinsă.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Modul Sudo este necesar.", "auth_and_oauth.unknown_application": "Aplicație necunoscută.", "auth_and_oauth.unknown_origin_handoff": "Acest transfer de autentificare a expirat sau a fost deja folosit.", + "auth_and_oauth.unknown_passkey_bridge": "Această cerere pentru cheia de acces a expirat. Încearcă din nou.", + "auth_and_oauth.unknown_passkey_migration": "Momentan nu există nicio cheie de acces de actualizat.", "auth_and_registration.password_is_too_common": "Parola ta este prea comună. Alege o parolă mai greu de ghicit.", "auth_and_registration.password_not_set": "Parola nu este setată.", "bots.bot_discriminator_cannot_be_changed": "Discriminatorul botului nu poate fi schimbat.", diff --git a/packages/errors/src/i18n/weblate/locales/ru.json b/packages/errors/src/i18n/weblate/locales/ru.json index 4a22d60ac..4f59aac60 100644 --- a/packages/errors/src/i18n/weblate/locales/ru.json +++ b/packages/errors/src/i18n/weblate/locales/ru.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Заголовок авторизации отсутствует или недействителен.", "auth_and_oauth.must_start_session_before_sending_messages": "Перед отправкой сообщений нужно начать сессию.", "auth_and_oauth.origin_handoff_nonce_invalid": "Этот перенос входа не совпадает с тем, который вы начали.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Не удалось подтвердить этот запрос ключа доступа. Повторите попытку.", "auth_and_oauth.registration_closed": "Регистрация в этом экземпляре закрыта.", "auth_and_oauth.registration_pending_approval": "Эта регистрация ожидает одобрения администратора.", "auth_and_oauth.registration_rejected": "Заявка на регистрацию отклонена.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Требуется режим sudo.", "auth_and_oauth.unknown_application": "Неизвестное приложение.", "auth_and_oauth.unknown_origin_handoff": "Срок действия этого переноса входа истёк, или он уже использован.", + "auth_and_oauth.unknown_passkey_bridge": "Срок действия этого запроса ключа доступа истёк. Повторите попытку.", + "auth_and_oauth.unknown_passkey_migration": "Сейчас нет ключа доступа, который нужно обновить.", "auth_and_registration.password_is_too_common": "Твой пароль слишком распространённый. Придумай менее предсказуемый пароль.", "auth_and_registration.password_not_set": "Пароль не установлен.", "bots.bot_discriminator_cannot_be_changed": "Дискриминатор бота нельзя изменить.", diff --git a/packages/errors/src/i18n/weblate/locales/sv-SE.json b/packages/errors/src/i18n/weblate/locales/sv-SE.json index d25964d88..066855e0a 100644 --- a/packages/errors/src/i18n/weblate/locales/sv-SE.json +++ b/packages/errors/src/i18n/weblate/locales/sv-SE.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Authorization-huvudet saknas eller är ogiltigt.", "auth_and_oauth.must_start_session_before_sending_messages": "Du måste starta en session innan du kan skicka meddelanden.", "auth_and_oauth.origin_handoff_nonce_invalid": "Den här inloggningsöverföringen matchar inte den du startade.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Den här begäran om lösennyckel kunde inte bekräftas. Försök igen.", "auth_and_oauth.registration_closed": "Registrering är stängd på den här instansen.", "auth_and_oauth.registration_pending_approval": "Den här registreringen väntar på administratörsgodkännande.", "auth_and_oauth.registration_rejected": "Den här registreringsbegäran avslogs.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo-läge krävs.", "auth_and_oauth.unknown_application": "Okänd applikation.", "auth_and_oauth.unknown_origin_handoff": "Den här inloggningsöverföringen har gått ut eller har redan använts.", + "auth_and_oauth.unknown_passkey_bridge": "Den här begäran om lösennyckel har gått ut. Försök igen.", + "auth_and_oauth.unknown_passkey_migration": "Det finns ingen lösennyckel att uppdatera just nu.", "auth_and_registration.password_is_too_common": "Ditt lösenord är för vanligt. Välj ett lösenord som är svårare att gissa.", "auth_and_registration.password_not_set": "Inget lösenord har angetts.", "bots.bot_discriminator_cannot_be_changed": "Botdiskriminatorn kan inte ändras.", diff --git a/packages/errors/src/i18n/weblate/locales/th.json b/packages/errors/src/i18n/weblate/locales/th.json index b7db4b5c9..32ea017da 100644 --- a/packages/errors/src/i18n/weblate/locales/th.json +++ b/packages/errors/src/i18n/weblate/locales/th.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "ส่วนหัว Authorization หายไปหรือไม่ถูกต้อง", "auth_and_oauth.must_start_session_before_sending_messages": "ต้องเริ่มเซสชันก่อนส่งข้อความ", "auth_and_oauth.origin_handoff_nonce_invalid": "การโอนการลงชื่อเข้าใช้นี้ไม่ตรงกับรายการที่คุณเริ่มไว้", + "auth_and_oauth.passkey_bridge_nonce_invalid": "ไม่สามารถยืนยันคำขอพาสคีย์นี้ได้ ลองอีกครั้ง", "auth_and_oauth.registration_closed": "การลงทะเบียนปิดให้บริการในอินสแตนซ์นี้", "auth_and_oauth.registration_pending_approval": "การลงทะเบียนนี้กำลังรอการอนุมัติจากผู้ดูแลระบบ", "auth_and_oauth.registration_rejected": "คำขอลงทะเบียนนี้ถูกปฏิเสธ", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "ต้องใช้โหมด sudo", "auth_and_oauth.unknown_application": "ไม่พบแอปพลิเคชัน", "auth_and_oauth.unknown_origin_handoff": "การโอนการลงชื่อเข้าใช้นี้หมดอายุแล้วหรือถูกใช้ไปแล้ว", + "auth_and_oauth.unknown_passkey_bridge": "คำขอพาสคีย์นี้หมดอายุแล้ว ลองอีกครั้ง", + "auth_and_oauth.unknown_passkey_migration": "ขณะนี้ไม่มีพาสคีย์ที่ต้องอัปเดต", "auth_and_registration.password_is_too_common": "รหัสผ่านของคุณเป็นรหัสที่พบบ่อยเกินไป โปรดเลือกรหัสผ่านที่เดาได้ยากขึ้น", "auth_and_registration.password_not_set": "ยังไม่ได้ตั้งรหัสผ่าน", "bots.bot_discriminator_cannot_be_changed": "ไม่สามารถเปลี่ยน discriminator ของบอทได้", diff --git a/packages/errors/src/i18n/weblate/locales/tr.json b/packages/errors/src/i18n/weblate/locales/tr.json index f0c22e12c..f1ba0f408 100644 --- a/packages/errors/src/i18n/weblate/locales/tr.json +++ b/packages/errors/src/i18n/weblate/locales/tr.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Eksik veya geçersiz yetkilendirme başlığı.", "auth_and_oauth.must_start_session_before_sending_messages": "Mesaj göndermeden önce bir oturum başlatmalısın.", "auth_and_oauth.origin_handoff_nonce_invalid": "Bu oturum açma aktarımı başlattığınız aktarımla eşleşmiyor.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Bu geçiş anahtarı isteği doğrulanamadı. Tekrar dene.", "auth_and_oauth.registration_closed": "Bu kurulumda kayıt kapalı.", "auth_and_oauth.registration_pending_approval": "Bu kayıt yönetici onayını bekliyor.", "auth_and_oauth.registration_rejected": "Bu kayıt isteği reddedildi.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo modu gerekli.", "auth_and_oauth.unknown_application": "Bilinmeyen uygulama.", "auth_and_oauth.unknown_origin_handoff": "Bu oturum açma aktarımının süresi doldu veya zaten kullanıldı.", + "auth_and_oauth.unknown_passkey_bridge": "Bu geçiş anahtarı isteğinin süresi doldu. Tekrar dene.", + "auth_and_oauth.unknown_passkey_migration": "Şu anda güncellenecek bir geçiş anahtarı yok.", "auth_and_registration.password_is_too_common": "Şifren çok yaygın. Lütfen tahmin edilmesi daha zor bir şifre seç.", "auth_and_registration.password_not_set": "Şifre ayarlanmamış.", "bots.bot_discriminator_cannot_be_changed": "Bot etiketi değiştirilemez.", diff --git a/packages/errors/src/i18n/weblate/locales/uk.json b/packages/errors/src/i18n/weblate/locales/uk.json index 8ed8d6fea..fc4778233 100644 --- a/packages/errors/src/i18n/weblate/locales/uk.json +++ b/packages/errors/src/i18n/weblate/locales/uk.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Відсутній або недійсний заголовок авторизації.", "auth_and_oauth.must_start_session_before_sending_messages": "Потрібно розпочати сесію, перш ніж надсилати повідомлення.", "auth_and_oauth.origin_handoff_nonce_invalid": "Це перенесення входу не збігається з тим, яке ви розпочали.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Не вдалося підтвердити цей запит ключа доступу. Спробуй ще раз.", "auth_and_oauth.registration_closed": "Реєстрацію на цьому екземплярі закрито.", "auth_and_oauth.registration_pending_approval": "Ця реєстрація очікує на схвалення адміністратором.", "auth_and_oauth.registration_rejected": "Цей запит на реєстрацію було відхилено.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Потрібен режим sudo.", "auth_and_oauth.unknown_application": "Невідомий застосунок.", "auth_and_oauth.unknown_origin_handoff": "Термін дії цього перенесення входу минув, або його вже використано.", + "auth_and_oauth.unknown_passkey_bridge": "Термін дії цього запиту ключа доступу минув. Спробуй ще раз.", + "auth_and_oauth.unknown_passkey_migration": "Зараз немає ключа доступу, який потрібно оновити.", "auth_and_registration.password_is_too_common": "Твій пароль занадто поширений. Обери менш передбачуваний пароль.", "auth_and_registration.password_not_set": "Пароль не встановлено.", "bots.bot_discriminator_cannot_be_changed": "Дискримінатор бота не можна змінити.", diff --git a/packages/errors/src/i18n/weblate/locales/vi.json b/packages/errors/src/i18n/weblate/locales/vi.json index 186c5921a..c20225fa4 100644 --- a/packages/errors/src/i18n/weblate/locales/vi.json +++ b/packages/errors/src/i18n/weblate/locales/vi.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Header ủy quyền bị thiếu hoặc không hợp lệ.", "auth_and_oauth.must_start_session_before_sending_messages": "Bạn phải bắt đầu một phiên trước khi gửi tin nhắn.", "auth_and_oauth.origin_handoff_nonce_invalid": "Lần chuyển đăng nhập này không khớp với lần bạn đã bắt đầu.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "Không thể xác nhận yêu cầu khóa truy cập này. Hãy thử lại.", "auth_and_oauth.registration_closed": "Đăng ký đã bị đóng trên phiên bản này.", "auth_and_oauth.registration_pending_approval": "Đăng ký này đang chờ quản trị viên phê duyệt.", "auth_and_oauth.registration_rejected": "Yêu cầu đăng ký này đã bị từ chối.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Yêu cầu chế độ sudo.", "auth_and_oauth.unknown_application": "Ứng dụng không xác định.", "auth_and_oauth.unknown_origin_handoff": "Lần chuyển đăng nhập này đã hết hạn hoặc đã được sử dụng.", + "auth_and_oauth.unknown_passkey_bridge": "Yêu cầu khóa truy cập này đã hết hạn. Hãy thử lại.", + "auth_and_oauth.unknown_passkey_migration": "Hiện không có khóa truy cập nào cần cập nhật.", "auth_and_registration.password_is_too_common": "Mật khẩu của bạn quá phổ biến. Vui lòng chọn mật khẩu khó đoán hơn.", "auth_and_registration.password_not_set": "Mật khẩu chưa được đặt.", "bots.bot_discriminator_cannot_be_changed": "Không thể thay đổi mã phân biệt của bot.", diff --git a/packages/errors/src/i18n/weblate/locales/zh-CN.json b/packages/errors/src/i18n/weblate/locales/zh-CN.json index f0aa69320..653278bc8 100644 --- a/packages/errors/src/i18n/weblate/locales/zh-CN.json +++ b/packages/errors/src/i18n/weblate/locales/zh-CN.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "缺少或无效的授权请求头。", "auth_and_oauth.must_start_session_before_sending_messages": "你必须先开始会话才能发送消息。", "auth_and_oauth.origin_handoff_nonce_invalid": "此登录转移与你发起的不一致。", + "auth_and_oauth.passkey_bridge_nonce_invalid": "无法确认此通行密钥请求。请重试。", "auth_and_oauth.registration_closed": "此实例的注册已关闭。", "auth_and_oauth.registration_pending_approval": "此注册正在等待管理员批准。", "auth_and_oauth.registration_rejected": "此注册请求已被拒绝。", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "需要 Sudo 模式。", "auth_and_oauth.unknown_application": "未知应用。", "auth_and_oauth.unknown_origin_handoff": "此登录转移已过期或已被使用。", + "auth_and_oauth.unknown_passkey_bridge": "此通行密钥请求已过期。请重试。", + "auth_and_oauth.unknown_passkey_migration": "目前没有需要更新的通行密钥。", "auth_and_registration.password_is_too_common": "你的密码太常见了。请换一个更难猜的密码。", "auth_and_registration.password_not_set": "密码未设置。", "bots.bot_discriminator_cannot_be_changed": "机器人识别码无法更改。", diff --git a/packages/errors/src/i18n/weblate/locales/zh-TW.json b/packages/errors/src/i18n/weblate/locales/zh-TW.json index 529082711..c194556c4 100644 --- a/packages/errors/src/i18n/weblate/locales/zh-TW.json +++ b/packages/errors/src/i18n/weblate/locales/zh-TW.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "授權標頭遺失或無效。", "auth_and_oauth.must_start_session_before_sending_messages": "你必須先開始工作階段才能傳送訊息。", "auth_and_oauth.origin_handoff_nonce_invalid": "此登入轉移與您發起的不一致。", + "auth_and_oauth.passkey_bridge_nonce_invalid": "無法確認此通行金鑰要求。請再試一次。", "auth_and_oauth.registration_closed": "此實例已關閉註冊。", "auth_and_oauth.registration_pending_approval": "此註冊正在等待管理員核准。", "auth_and_oauth.registration_rejected": "此註冊要求已被拒絕。", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "需要 Sudo 模式。", "auth_and_oauth.unknown_application": "不明應用程式。", "auth_and_oauth.unknown_origin_handoff": "此登入轉移已過期或已被使用。", + "auth_and_oauth.unknown_passkey_bridge": "此通行金鑰要求已過期。請再試一次。", + "auth_and_oauth.unknown_passkey_migration": "目前沒有需要更新的通行金鑰。", "auth_and_registration.password_is_too_common": "你的密碼太常見。請選擇較難預測的密碼。", "auth_and_registration.password_not_set": "密碼尚未設定。", "bots.bot_discriminator_cannot_be_changed": "機器人識別碼無法變更。", diff --git a/packages/errors/src/i18n/weblate/messages.json b/packages/errors/src/i18n/weblate/messages.json index f169f3760..305e043e7 100644 --- a/packages/errors/src/i18n/weblate/messages.json +++ b/packages/errors/src/i18n/weblate/messages.json @@ -98,6 +98,7 @@ "auth_and_oauth.missing_authorization": "Missing or invalid authorization header.", "auth_and_oauth.must_start_session_before_sending_messages": "You must start a session before sending messages.", "auth_and_oauth.origin_handoff_nonce_invalid": "This sign-in transfer doesn't match the one you started.", + "auth_and_oauth.passkey_bridge_nonce_invalid": "This passkey request could not be confirmed. Try again.", "auth_and_oauth.registration_closed": "Registration is closed on this instance.", "auth_and_oauth.registration_pending_approval": "This registration is waiting for admin approval.", "auth_and_oauth.registration_rejected": "This registration request was rejected.", @@ -111,6 +112,8 @@ "auth_and_oauth.sudo_mode_required": "Sudo mode is required.", "auth_and_oauth.unknown_application": "Unknown application.", "auth_and_oauth.unknown_origin_handoff": "This sign-in transfer has expired or was already used.", + "auth_and_oauth.unknown_passkey_bridge": "This passkey request has expired. Try again.", + "auth_and_oauth.unknown_passkey_migration": "There is no passkey to update right now.", "auth_and_registration.password_is_too_common": "Your password is too common. Please choose a less predictable password.", "auth_and_registration.password_not_set": "Password isn't set.", "bots.bot_discriminator_cannot_be_changed": "Bot discriminator can't be changed.", diff --git a/packages/schema/src/domains/auth/AuthSchemas.ts b/packages/schema/src/domains/auth/AuthSchemas.ts index f1f3e4674..80ef72242 100644 --- a/packages/schema/src/domains/auth/AuthSchemas.ts +++ b/packages/schema/src/domains/auth/AuthSchemas.ts @@ -471,6 +471,7 @@ export const WebAuthnCredentialResponse = z.object({ name: z.string().describe('User-assigned name for the credential'), created_at: z.string().describe('When the credential was registered'), last_used_at: z.string().nullable().describe('When the credential was last used'), + rp_id: z.string().describe('Relying party ID the passkey belongs to'), }); export type WebAuthnCredentialResponse = z.infer; diff --git a/packages/schema/src/domains/auth/PasskeyBridgeSchemas.ts b/packages/schema/src/domains/auth/PasskeyBridgeSchemas.ts new file mode 100644 index 000000000..2fa49e2f3 --- /dev/null +++ b/packages/schema/src/domains/auth/PasskeyBridgeSchemas.ts @@ -0,0 +1,113 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {WebAuthnAuthenticationOptionsResponse} from '@fluxer/schema/src/domains/auth/AuthSchemas'; +import {WebAuthnAuthenticationResponse} from '@fluxer/schema/src/domains/auth/WebAuthnSchemas'; +import {UserPartialResponse} from '@fluxer/schema/src/domains/user/UserResponseSchemas'; +import {SnowflakeStringType} from '@fluxer/schema/src/primitives/SchemaPrimitives'; +import {z} from 'zod'; + +const Base64UrlPattern = /^[A-Za-z0-9_-]+$/u; +const PasskeyBridgeSecretPattern = /^[A-Za-z0-9_-]{43}$/u; + +export const PasskeyBridgeRunner = z + .enum(['page', 'native']) + .describe('Where the passkey ceremony runs: a page on the paired origin or the native desktop client'); + +export type PasskeyBridgeRunner = z.infer; + +const PasskeyBridgeNonceHash = z + .string() + .regex(/^[0-9a-f]{64}$/u) + .describe('Lowercase hex SHA-256 digest of the nonce the starting page keeps'); + +export const PasskeyBridgeLoginStartRequest = z + .object({ + purpose: z.enum(['login', 'login_mfa']).describe('Whether the passkey signs in or completes two-factor sign in'), + runner: PasskeyBridgeRunner, + ticket: z.string().min(1).max(256).optional().describe('The MFA ticket from the login response, for login_mfa'), + nonce_hash: PasskeyBridgeNonceHash, + }) + .superRefine((value, ctx) => { + if ((value.purpose === 'login_mfa') !== (value.ticket !== undefined)) { + ctx.addIssue({code: 'custom', path: ['ticket'], message: 'A ticket is required only for login_mfa'}); + } + }); + +export type PasskeyBridgeLoginStartRequest = z.infer; + +export const PasskeyBridgeSudoStartRequest = z.object({ + runner: PasskeyBridgeRunner, + nonce_hash: PasskeyBridgeNonceHash, +}); + +export type PasskeyBridgeSudoStartRequest = z.infer; + +export const PasskeyBridgeStartResponse = z.object({ + ceremony_id: z.string().describe('Identifier of the passkey ceremony'), + bridge_url: z.string().nullable().describe('Page that runs the ceremony, or null for the native runner'), +}); + +export type PasskeyBridgeStartResponse = z.infer; + +export const PasskeyBridgeCeremonyIdParam = z.object({ + ceremony_id: z.string().regex(PasskeyBridgeSecretPattern).describe('Identifier of the passkey ceremony'), +}); + +export type PasskeyBridgeCeremonyIdParam = z.infer; + +export const PasskeyBridgeOptionsResponse = z.object({ + options: WebAuthnAuthenticationOptionsResponse.describe('WebAuthn authentication options for the ceremony'), +}); + +export type PasskeyBridgeOptionsResponse = z.infer; + +export const PasskeyBridgeCompleteRequest = z.object({ + response: WebAuthnAuthenticationResponse.describe('WebAuthn authentication response'), +}); + +export type PasskeyBridgeCompleteRequest = z.infer; + +export const PasskeyBridgeFinishResponse = z.object({ + return_url: z.string().nullable().describe('Where the page runner goes next, or null for the native runner'), + completion_code: z.string().nullable().describe('Code the native runner redeems, or null for the page runner'), +}); + +export type PasskeyBridgeFinishResponse = z.infer; + +export const PasskeyBridgeRedeemRequest = z.object({ + nonce: z + .string() + .min(16) + .max(256) + .regex(Base64UrlPattern) + .describe('Nonce whose SHA-256 digest was sent when the ceremony started'), + completion_code: z.string().regex(PasskeyBridgeSecretPattern).describe('Code handed back when the ceremony finished'), +}); + +export type PasskeyBridgeRedeemRequest = z.infer; + +const PasskeyBridgeCancelledResponse = z.object({ + status: z.literal('cancelled').describe('The ceremony was cancelled'), +}); + +export const PasskeyBridgeLoginRedeemResponse = z.discriminatedUnion('status', [ + PasskeyBridgeCancelledResponse, + z.object({ + status: z.literal('completed').describe('The ceremony finished'), + token: z.string().describe('Authentication token for API requests'), + user_id: SnowflakeStringType.describe('ID of the authenticated user'), + user: UserPartialResponse.describe('Partial user data for the authenticated account'), + }), +]); + +export type PasskeyBridgeLoginRedeemResponse = z.infer; + +export const PasskeyBridgeSudoRedeemResponse = z.discriminatedUnion('status', [ + PasskeyBridgeCancelledResponse, + z.object({ + status: z.literal('completed').describe('The ceremony finished'), + sudo_token: z.string().describe('Sudo mode token'), + }), +]); + +export type PasskeyBridgeSudoRedeemResponse = z.infer; diff --git a/packages/schema/src/domains/auth/PasskeyMigrationSchemas.ts b/packages/schema/src/domains/auth/PasskeyMigrationSchemas.ts new file mode 100644 index 000000000..bcd638c28 --- /dev/null +++ b/packages/schema/src/domains/auth/PasskeyMigrationSchemas.ts @@ -0,0 +1,25 @@ +// SPDX-License-Identifier: AGPL-3.0-or-later + +import {WebAuthnRegistrationResponse} from '@fluxer/schema/src/domains/auth/WebAuthnSchemas'; +import {createStringType} from '@fluxer/schema/src/primitives/SchemaPrimitives'; +import {z} from 'zod'; + +export const PasskeyMigrationResponse = z.object({ + pending: z + .object({ + credential_id: z.string().describe('ID of the passkey waiting to be updated'), + name: z.string().describe('User-assigned name of the passkey'), + cross_device: z.boolean().describe('Whether the passkey was used from another device'), + }) + .nullable() + .describe('The passkey this session can update, or null'), +}); + +export type PasskeyMigrationResponse = z.infer; + +export const PasskeyMigrationCompleteRequest = z.object({ + response: WebAuthnRegistrationResponse.describe('WebAuthn registration response'), + challenge: createStringType(1, 1024).describe('The challenge from registration options'), +}); + +export type PasskeyMigrationCompleteRequest = z.infer; diff --git a/tools/dev/cassandra_target_schema.json b/tools/dev/cassandra_target_schema.json index 4d22c4a1e..121406e9d 100644 --- a/tools/dev/cassandra_target_schema.json +++ b/tools/dev/cassandra_target_schema.json @@ -8989,6 +8989,14 @@ { "name": "version", "type": "int" + }, + { + "name": "rp_id", + "type": "text" + }, + { + "name": "superseded_by", + "type": "text" } ], "primary_key": "((user_id), credential_id)",