Compare commits

..
Author SHA1 Message Date
HampusandGitHub cdcaba34ce fix(self-hosting): cap meilisearch indexing threads by default (#3153) 2026-10-03 02:15:16 +02:00
HampusandGitHub 09b9a57e38 fix(guild): match the verification discovery note to filtering (#3152) 2026-10-03 02:14:54 +02:00
HampusandGitHub 79d7c85832 fix(app): retry emoji picker images that fail to load (#3151) 2026-10-03 02:14:28 +02:00
HampusandGitHub eb0e8366bc fix(voice): keep saved linux audio apps in the source picker (#3150) 2026-10-03 02:14:06 +02:00
HampusandGitHub cf9752db4f fix(voice): release call modals when fullscreen ends (#3149) 2026-10-03 02:13:46 +02:00
HampusandGitHub d6fb3b2c50 fix(apps): stop bot permission labels overlapping (#3148) 2026-10-03 02:11:57 +02:00
HampusandGitHub b04fdc68df fix(storage): fall back when cross-bucket copy is rejected (#3147) 2026-10-03 02:11:34 +02:00
HampusandGitHub 706c41aad9 fix(auth): check the TOTP setup code before asking for sudo (#3146) 2026-10-03 02:11:14 +02:00
HampusandGitHub db9ec0605e fix(media-proxy): stop rejecting large storage transport chunks (#3144) 2026-10-03 02:10:55 +02:00
omsterandGitHub a95172bf88 fix(app-call): utilise popout window opened by manager (#2960) 2026-10-03 01:11:23 +02:00
HampusandGitHub 597116a0b4 fix(app): stop blurring reactions and stickers in CW channels (#3141) 2026-10-02 23:52:17 +02:00
HampusandGitHub 811341bc2f feat(email): configurable reply-to address (#3140) 2026-10-02 23:26:01 +02:00
HampusandGitHub 98fa41dcf0 fix(voice): avoid capped software h264 for auto screen shares (#3139) 2026-10-02 22:52:03 +02:00
HampusandGitHub b52a0b5d5f fix: friendlier wording for paused messaging (#3138) 2026-10-02 22:50:34 +02:00
HampusandGitHub effeaaa435 fix(app): make web update detection survive flaky networks (#3135) 2026-10-02 21:39:52 +02:00
HampusandGitHub 27fc634bc9 perf(app): stop preloading channels and guilds on hover (#3133) 2026-10-02 19:04:14 +02:00
HampusandGitHub 69d93f9fee fix(premium): serve the Plutonium page at /channels/@premium (#3132) 2026-10-02 18:20:01 +02:00
HampusandGitHub 00620715da fix(api): drop leftover node stats logging (#3131) 2026-10-02 18:19:07 +02:00
168 changed files with 2718 additions and 2436 deletions
+7 -3
View File
@@ -309,6 +309,7 @@ FLUXER_EMAIL_ENABLED=false
FLUXER_EMAIL_PROVIDER=none
FLUXER_EMAIL_FROM_EMAIL=[email protected]
FLUXER_EMAIL_FROM_NAME=Fluxer
#[email protected]
FLUXER_EMAIL_APP_BASE_URL=
FLUXER_EMAIL_SMTP_HOST=
FLUXER_EMAIL_SMTP_PORT=587
@@ -411,7 +412,7 @@ FLUXER_DISCOVERY_ENABLED=true
#FLUXER_POSTGRES_MEMORY_RESERVATION=3gb
#FLUXER_VALKEY_MEMORY_LIMIT=256mb
#FLUXER_NATS_MEMORY_LIMIT=256mb
#FLUXER_MEILISEARCH_MEMORY_LIMIT=768mb
#FLUXER_MEILISEARCH_MEMORY_LIMIT=1536mb
#FLUXER_SEAWEEDFS_MEMORY_LIMIT=2gb
#FLUXER_SEAWEEDFS_INIT_MEMORY_LIMIT=128mb
#FLUXER_LIVEKIT_MEMORY_LIMIT=512mb
@@ -437,8 +438,11 @@ FLUXER_DISCOVERY_ENABLED=true
#FLUXER_UNFURL_SHARD_MEMORY_LIMIT=256mb
#FLUXER_ADMIN_MEMORY_LIMIT=256mb
# Meilisearch indexing memory. Keep it well under the container limit above.
#FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY=384mb
# Meilisearch indexing memory and threads. Each indexing thread needs its own
# buffers on top of the indexing memory, so raise the threads only together with
# the container limit above.
#FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY=256mb
#FLUXER_MEILISEARCH_MAX_INDEXING_THREADS=2
#FLUXER_MEILISEARCH_ENV=production
#FLUXER_MEILISEARCH_NO_ANALYTICS=true
+4 -2
View File
@@ -113,6 +113,7 @@ x-fluxer-env: &fluxer-env
FLUXER_EMAIL_PROVIDER: ${FLUXER_EMAIL_PROVIDER:-}
FLUXER_EMAIL_FROM_EMAIL: ${FLUXER_EMAIL_FROM_EMAIL:-noreply@localhost}
FLUXER_EMAIL_FROM_NAME: ${FLUXER_EMAIL_FROM_NAME:-}
FLUXER_EMAIL_REPLY_TO_EMAIL: ${FLUXER_EMAIL_REPLY_TO_EMAIL:-}
FLUXER_EMAIL_APP_BASE_URL: ${FLUXER_EMAIL_APP_BASE_URL:-}
FLUXER_EMAIL_WEBHOOK_SECRET: ${FLUXER_EMAIL_WEBHOOK_SECRET:-}
FLUXER_EMAIL_SMTP_HOST: ${FLUXER_EMAIL_SMTP_HOST:-}
@@ -329,12 +330,13 @@ services:
deploy:
resources:
limits:
memory: ${FLUXER_MEILISEARCH_MEMORY_LIMIT:-768mb}
memory: ${FLUXER_MEILISEARCH_MEMORY_LIMIT:-1536mb}
environment:
MEILI_ENV: ${FLUXER_MEILISEARCH_ENV:-production}
MEILI_NO_ANALYTICS: "${FLUXER_MEILISEARCH_NO_ANALYTICS:-true}"
MEILI_UPGRADE_DB: "true"
MEILI_MAX_INDEXING_MEMORY: ${FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY:-384mb}
MEILI_MAX_INDEXING_MEMORY: ${FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY:-256mb}
MEILI_MAX_INDEXING_THREADS: ${FLUXER_MEILISEARCH_MAX_INDEXING_THREADS:-2}
MEILI_MASTER_KEY: ${MEILI_MASTER_KEY:?set MEILI_MASTER_KEY in .env}
volumes:
- meilisearch-data:/meili_data
@@ -4,6 +4,7 @@ export interface EmailConfig {
enabled: boolean;
fromEmail: string;
fromName: string;
replyTo?: string | null;
appBaseUrl: string;
marketingBaseUrl: string;
}
@@ -14,6 +15,7 @@ export interface EmailMessage {
email: string;
name: string;
};
replyTo?: string;
subject: string;
text: string;
}
@@ -0,0 +1,41 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import {EmailI18nService} from '@pkgs/email/src/EmailI18nService';
import type {EmailConfig, EmailMessage, IEmailProvider} from '@pkgs/email/src/EmailProviderTypes';
import {EmailService} from '@pkgs/email/src/EmailService';
import {describe, expect, it} from 'vitest';
const CONFIG: EmailConfig = {
enabled: true,
fromEmail: '[email protected]',
fromName: 'Fluxer',
appBaseUrl: 'https://example.com',
marketingBaseUrl: 'https://example.com',
};
async function sendWith(config: EmailConfig): Promise<EmailMessage> {
const sent: Array<EmailMessage> = [];
const provider: IEmailProvider = {
sendEmail: async (message) => {
sent.push(message);
return true;
},
};
const service = new EmailService(config, new EmailI18nService(), provider);
await expect(service.sendRegistrationApprovedEmail('[email protected]', 'testuser', 'en-US')).resolves.toBe(true);
expect(sent).toHaveLength(1);
return sent[0];
}
describe('EmailService reply-to', () => {
it('sets the configured reply-to address on every message', async () => {
const message = await sendWith({...CONFIG, replyTo: '[email protected]'});
expect(message.replyTo).toBe('[email protected]');
expect(message.from).toEqual({email: '[email protected]', name: 'Fluxer'});
});
it.each([undefined, null, ''])('omits the reply-to address when it is %j', async (replyTo) => {
const message = await sendWith({...CONFIG, replyTo});
expect(message).not.toHaveProperty('replyTo');
});
});
@@ -375,6 +375,7 @@ export class EmailService implements IEmailService {
return this.provider.sendEmail({
to: email,
from: {email: this.config.fromEmail, name: this.config.fromName},
...(this.config.replyTo ? {replyTo: this.config.replyTo} : {}),
subject,
text: body,
});
@@ -0,0 +1,44 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import {SmtpEmailProvider} from '@pkgs/email/src/SmtpEmailProvider';
import {beforeEach, describe, expect, it, vi} from 'vitest';
const {sendMail} = vi.hoisted(() => ({sendMail: vi.fn()}));
vi.mock('nodemailer', () => ({
default: {createTransport: () => ({sendMail, verify: vi.fn()})},
}));
const MESSAGE = {
to: '[email protected]',
from: {email: '[email protected]', name: 'Fluxer'},
subject: 'Subject',
text: 'Body',
};
function createProvider(): SmtpEmailProvider {
return new SmtpEmailProvider({host: 'smtp.example.com', port: 587, username: 'user', password: 'pass'});
}
describe('SmtpEmailProvider', () => {
beforeEach(() => {
sendMail.mockReset();
sendMail.mockResolvedValue({});
});
it('passes the reply-to address to nodemailer', async () => {
await expect(createProvider().sendEmail({...MESSAGE, replyTo: '[email protected]'})).resolves.toBe(true);
expect(sendMail).toHaveBeenCalledWith({
to: '[email protected]',
from: 'Fluxer <[email protected]>',
replyTo: '[email protected]',
subject: 'Subject',
text: 'Body',
});
});
it('omits the reply-to address when the message has none', async () => {
await expect(createProvider().sendEmail(MESSAGE)).resolves.toBe(true);
expect(sendMail.mock.calls[0][0]).not.toHaveProperty('replyTo');
});
});
@@ -45,6 +45,7 @@ export class SmtpEmailProvider implements IEmailProvider {
await this.transporter.sendMail({
to: message.to,
from: `${message.from.name} <${message.from.email}>`,
...(message.replyTo ? {replyTo: message.replyTo} : {}),
subject: message.subject,
text: message.text,
});
+1
View File
@@ -248,6 +248,7 @@ export function buildAPIConfigFromMaster(master: MasterConfig): APIConfig {
webhookSecret: master.integrations.email.webhook_secret ?? undefined,
fromEmail: master.integrations.email.from_email,
fromName: master.integrations.email.from_name,
replyToEmail: master.integrations.email.reply_to_email,
appBaseUrl: resolveEmailAppBaseUrl(master),
smtp: master.integrations.email.smtp
? {
@@ -0,0 +1,57 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import {createAuthHarness, createTestAccount, createTotpSecret, totpCodeNow} from '@app/api/auth/tests/AuthTestUtils';
import type {ApiTestHarness} from '@app/api/test/ApiTestHarness';
import {HTTP_STATUS} from '@app/api/test/TestConstants';
import {createBuilder} from '@app/api/test/TestRequestBuilder';
import {ValidationErrorCodes} from '@fluxer/constants/src/ValidationErrorCodes';
import {afterAll, beforeAll, beforeEach, describe, expect, it} from 'vitest';
interface ValidationErrorBody {
code: string;
errors: Array<{path: string; code: string}>;
}
function wrongCodeFor(code: string): string {
return ((Number(code) + 500_000) % 1_000_000).toString().padStart(6, '0');
}
describe('Enabling TOTP checks the setup code before sudo', () => {
let harness: ApiTestHarness;
beforeAll(async () => {
harness = await createAuthHarness();
});
beforeEach(async () => {
await harness.reset();
});
afterAll(async () => {
await harness?.shutdown();
});
it('rejects a wrong setup code on the code field without asking for a password', async () => {
const account = await createTestAccount(harness);
const secret = createTotpSecret();
const error = await createBuilder<ValidationErrorBody>(harness, account.token)
.post('/users/@me/mfa/totp/enable')
.body({secret, code: wrongCodeFor(totpCodeNow(secret))})
.expect(HTTP_STATUS.BAD_REQUEST, 'INVALID_FORM_BODY')
.execute();
expect(error.errors[0]?.path).toBe('code');
expect(error.errors[0]?.code).toBe(ValidationErrorCodes.INVALID_CODE);
});
it('asks for sudo for a valid setup code, then enables with the password', async () => {
const account = await createTestAccount(harness);
const secret = createTotpSecret();
const code = totpCodeNow(secret);
await createBuilder(harness, account.token)
.post('/users/@me/mfa/totp/enable')
.body({secret, code})
.expect(HTTP_STATUS.FORBIDDEN, 'SUDO_MODE_REQUIRED')
.execute();
const enabled = await createBuilder<{backup_codes: Array<{code: string}>}>(harness, account.token)
.post('/users/@me/mfa/totp/enable')
.body({secret, code, password: account.password})
.expect(HTTP_STATUS.OK)
.execute();
expect(enabled.backup_codes.length).toBeGreaterThan(0);
});
});
+1
View File
@@ -155,6 +155,7 @@ export interface APIConfig {
webhookSecret?: string;
fromEmail: string;
fromName: string;
replyToEmail: string;
appBaseUrl: string;
smtp?: {
host: string;
@@ -1744,8 +1744,6 @@ export class GatewayService {
}
async getNodeStats(): Promise<GatewayNodeStats> {
const a = this.call<GatewayNodeStats>('process.node_stats', {});
console.log(a.then((stats) => console.log('Node stats:', stats)));
return this.call<GatewayNodeStats>('process.node_stats', {});
}
@@ -108,6 +108,22 @@ function extractStreamFromGet(out: GetObjectCommandOutput): Readable {
return wrapped;
}
const REJECTED_SERVER_SIDE_COPY_ERRORS = new Set([
'NoSuchKey',
'NotFound',
'NotImplemented',
'AccessDenied',
'InvalidRequest',
'MethodNotAllowed',
]);
function isRejectedServerSideCopy(error: unknown): boolean {
return (
error instanceof S3ServiceException &&
(REJECTED_SERVER_SIDE_COPY_ERRORS.has(error.name) || error.$metadata?.httpStatusCode === 501)
);
}
export class StorageService implements IStorageService {
private readonly client: S3Client;
private readonly presignClient: S3Client;
@@ -473,15 +489,76 @@ export class StorageService implements IStorageService {
if (isSameObject && !newContentType) {
return;
}
await this.client.send(
new CopyObjectCommand({
try {
await this.client.send(
new CopyObjectCommand({
Bucket: destinationBucket,
Key: destinationKey,
CopySource: `${encodeURIComponent(sourceBucket)}/${sourceKey.split('/').map(encodeURIComponent).join('/')}`,
ContentType: newContentType,
MetadataDirective: newContentType ? 'REPLACE' : undefined,
}),
);
} catch (copyError) {
if (sourceBucket === destinationBucket || !isRejectedServerSideCopy(copyError)) {
throw copyError;
}
await this.copyObjectThroughApi(
{sourceBucket, sourceKey, destinationBucket, destinationKey, newContentType},
copyError,
);
}
}
private async copyObjectThroughApi(
{
sourceBucket,
sourceKey,
destinationBucket,
destinationKey,
newContentType,
}: {
sourceBucket: string;
sourceKey: string;
destinationBucket: string;
destinationKey: string;
newContentType?: string;
},
copyError: unknown,
): Promise<void> {
const source = await this.streamObject({bucket: sourceBucket, key: sourceKey});
if (!source) {
throw copyError;
}
Logger.warn(
{sourceBucket, destinationBucket, error: copyError},
'Object storage rejected a cross-bucket copy, copying through the API instead',
);
const upload = new Upload({
client: this.client,
params: {
Bucket: destinationBucket,
Key: destinationKey,
CopySource: `${encodeURIComponent(sourceBucket)}/${sourceKey.split('/').map(encodeURIComponent).join('/')}`,
ContentType: newContentType,
MetadataDirective: newContentType ? 'REPLACE' : undefined,
}),
);
Body: source.body,
ContentType: newContentType ?? source.contentType ?? undefined,
...(newContentType
? {}
: {
CacheControl: source.cacheControl ?? undefined,
ContentDisposition: source.contentDisposition ?? undefined,
Expires: source.expires ?? undefined,
}),
},
partSize: STREAM_UPLOAD_PART_BYTES,
queueSize: STREAM_UPLOAD_CONCURRENCY,
leavePartsOnError: false,
});
try {
await upload.done();
} catch (error) {
source.body.destroy();
throw error;
}
}
async copyObjectWithMetadataStripping({
@@ -0,0 +1,202 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import {StorageService} from '@app/api/infrastructure/StorageService';
import {server} from '@app/api/test/msw/server';
import {HttpResponse, http} from 'msw';
import {beforeEach, describe, expect, it} from 'vitest';
const ENDPOINT = 'https://objects.ceph-rgw.test';
const UPLOADS = 'fluxer-uploads';
const CDN = 'fluxer-cdn';
interface StoredObject {
body: Uint8Array;
contentType: string;
cacheControl?: string;
contentDisposition?: string;
}
const NO_SUCH_KEY = (bucket: string) =>
new HttpResponse(
`<?xml version="1.0" encoding="UTF-8"?><Error><Code>NoSuchKey</Code><Message></Message><BucketName>${bucket}</BucketName><RequestId>tx0</RequestId><HostId>ceph</HostId></Error>`,
{status: 404, headers: {'Content-Type': 'application/xml'}},
);
function cephWithoutCrossBucketCopy() {
const objects = new Map<string, StoredObject>();
const copies: Array<{source: string; destination: string}> = [];
const locate = (params: {bucket?: string | ReadonlyArray<string>; key?: string | ReadonlyArray<string>}) => {
const bucket = String(params.bucket);
const key = Array.isArray(params.key) ? params.key.join('/') : String(params.key);
return {bucket, key, id: `${bucket}/${key}`};
};
server.use(
http.put(`${ENDPOINT}/:bucket/*`, async ({request, params}) => {
const target = locate({bucket: params.bucket, key: params[0] as string});
const copySource = request.headers.get('x-amz-copy-source');
if (copySource) {
const decoded = decodeURIComponent(copySource.replace(/^\//u, ''));
const sourceBucket = decoded.split('/')[0];
copies.push({source: decoded, destination: target.id});
if (sourceBucket !== target.bucket) {
return NO_SUCH_KEY(target.bucket);
}
const source = objects.get(decoded);
if (!source) {
return NO_SUCH_KEY(target.bucket);
}
objects.set(target.id, {
...source,
contentType: request.headers.get('content-type') ?? source.contentType,
});
return new HttpResponse(
'<?xml version="1.0" encoding="UTF-8"?><CopyObjectResult><ETag>"x"</ETag></CopyObjectResult>',
{status: 200, headers: {'Content-Type': 'application/xml'}},
);
}
const body = new Uint8Array(await request.arrayBuffer());
objects.set(target.id, {
body,
contentType: request.headers.get('content-type') ?? 'application/octet-stream',
...(request.headers.get('cache-control') ? {cacheControl: request.headers.get('cache-control')!} : {}),
...(request.headers.get('content-disposition')
? {contentDisposition: request.headers.get('content-disposition')!}
: {}),
});
return new HttpResponse(null, {status: 200, headers: {ETag: '"x"'}});
}),
http.get(`${ENDPOINT}/:bucket/*`, ({params}) => {
const target = locate({bucket: params.bucket, key: params[0] as string});
const object = objects.get(target.id);
if (!object) {
return NO_SUCH_KEY(target.bucket);
}
return new HttpResponse(object.body, {
status: 200,
headers: {
'Content-Type': object.contentType,
'Content-Length': String(object.body.length),
...(object.cacheControl ? {'Cache-Control': object.cacheControl} : {}),
...(object.contentDisposition ? {'Content-Disposition': object.contentDisposition} : {}),
},
});
}),
http.head(`${ENDPOINT}/:bucket/*`, ({params}) => {
const target = locate({bucket: params.bucket, key: params[0] as string});
const object = objects.get(target.id);
if (!object) {
return new HttpResponse(null, {status: 404});
}
return new HttpResponse(null, {
status: 200,
headers: {'Content-Type': object.contentType, 'Content-Length': String(object.body.length)},
});
}),
);
return {objects, copies};
}
function storage(): StorageService {
return new StorageService({
endpoint: ENDPOINT,
forcePathStyle: true,
region: 'nbg1',
accessKeyId: 'TEST',
secretAccessKey: 'TEST',
});
}
const PDF = new TextEncoder().encode('%PDF-1.7\n1 0 obj << /Type /Catalog >> endobj\n%%EOF\n');
describe('StorageService copies on providers that reject cross-bucket CopyObject', () => {
let ceph: ReturnType<typeof cephWithoutCrossBucketCopy>;
beforeEach(() => {
ceph = cephWithoutCrossBucketCopy();
});
it('stores a non-media attachment in the CDN bucket', async () => {
ceph.objects.set(`${UPLOADS}/upload-1`, {body: PDF, contentType: 'application/octet-stream'});
await expect(
storage().copyObjectWithMetadataStripping({
sourceBucket: UPLOADS,
sourceKey: 'upload-1',
destinationBucket: CDN,
destinationKey: 'attachments/1/2/file.pdf',
contentType: 'application/pdf',
}),
).resolves.toBeNull();
const stored = ceph.objects.get(`${CDN}/attachments/1/2/file.pdf`);
expect(stored?.contentType).toBe('application/pdf');
expect(Buffer.from(stored!.body).equals(Buffer.from(PDF))).toBe(true);
});
it('keeps the original file when media processing fails', async () => {
const brokenHeic = new Uint8Array(4096).fill(7);
ceph.objects.set(`${UPLOADS}/upload-2`, {body: brokenHeic, contentType: 'application/octet-stream'});
await expect(
storage().copyObjectWithMetadataStripping({
sourceBucket: UPLOADS,
sourceKey: 'upload-2',
destinationBucket: CDN,
destinationKey: 'attachments/1/3/photo.heic',
contentType: 'image/heic',
}),
).resolves.toBeNull();
const stored = ceph.objects.get(`${CDN}/attachments/1/3/photo.heic`);
expect(stored?.contentType).toBe('image/heic');
expect(Buffer.from(stored!.body).equals(Buffer.from(brokenHeic))).toBe(true);
});
it('keeps the source headers when no new content type is given', async () => {
ceph.objects.set(`${CDN}/avatars/1/a.png`, {
body: PDF,
contentType: 'image/png',
cacheControl: 'public, max-age=31536000, immutable',
contentDisposition: 'inline',
});
await storage().copyObject({
sourceBucket: CDN,
sourceKey: 'avatars/1/a.png',
destinationBucket: 'fluxer-reports',
destinationKey: 'evidence/a.png',
});
expect(ceph.objects.get('fluxer-reports/evidence/a.png')).toMatchObject({
contentType: 'image/png',
cacheControl: 'public, max-age=31536000, immutable',
contentDisposition: 'inline',
});
});
it('still fails when the source object does not exist', async () => {
await expect(
storage().copyObject({
sourceBucket: UPLOADS,
sourceKey: 'missing',
destinationBucket: CDN,
destinationKey: 'attachments/1/4/missing.pdf',
newContentType: 'application/pdf',
}),
).rejects.toMatchObject({name: 'NoSuchKey'});
expect(ceph.objects.has(`${CDN}/attachments/1/4/missing.pdf`)).toBe(false);
});
it('does not retry a failed same-bucket copy through the API', async () => {
await expect(
storage().copyObject({
sourceBucket: CDN,
sourceKey: 'missing',
destinationBucket: CDN,
destinationKey: 'other',
newContentType: 'image/png',
}),
).rejects.toMatchObject({name: 'NoSuchKey'});
expect(ceph.copies).toEqual([{source: `${CDN}/missing`, destination: `${CDN}/other`}]);
});
});
@@ -187,6 +187,7 @@ function createEmailServiceForConfig(
enabled: emailConfigSource.enabled,
fromEmail: emailConfigSource.fromEmail,
fromName: emailConfigSource.fromName,
replyTo: emailConfigSource.replyToEmail || null,
appBaseUrl: emailConfigSource.appBaseUrl,
marketingBaseUrl: Config.endpoints.marketing,
};
@@ -12,6 +12,7 @@ import {OpenAPI} from '@app/api/middleware/ResponseTypeMiddleware';
import {SudoModeMiddleware} from '@app/api/middleware/SudoModeMiddleware';
import {RateLimitConfigs} from '@app/api/RateLimitConfig';
import type {HonoApp} from '@app/api/types/HonoEnv';
import {assertValidTotpSetupCode} from '@app/api/user/services/UserAuth';
import {Validator} from '@app/api/Validator';
import {
DisableTotpRequest,
@@ -60,6 +61,7 @@ export function UserAuthController(app: HonoApp) {
async (ctx) => {
const body = ctx.req.valid('json');
const user = ctx.get('user');
await assertValidTotpSetupCode(body.secret, body.code);
const sudoResult = await requireSudoMode(ctx, user, body);
return ctx.json(
await ctx.get('userAuthRequestService').enableTotp({
@@ -8,6 +8,7 @@ import type {SudoVerificationResult} from '@app/api/auth/services/SudoVerificati
import type {MfaBackupCode} from '@app/api/models/MfaBackupCode';
import type {User} from '@app/api/models/User';
import {mapUserToPrivateResponse} 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';
import {MfaNotDisabledError} from '@fluxer/errors/src/domains/auth/MfaNotDisabledError';
@@ -55,6 +56,20 @@ async function assertSudoVerifiedForMfa(
);
}
async function isValidTotpSetupCode(secret: string, code: string): Promise<boolean> {
try {
return await new TotpGenerator(secret).validateTotp(code);
} catch {
return false;
}
}
export async function assertValidTotpSetupCode(secret: string, code: string): Promise<void> {
if (!(await isValidTotpSetupCode(secret, code))) {
throw InputValidationError.fromCode('code', ValidationErrorCodes.INVALID_CODE);
}
}
export async function enableMfaTotp(
ctx: ApiContext,
{user, secret, code, sudoContext}: EnableMfaTotpParams,
@@ -29,7 +29,7 @@ async function clearFlags(harness: ApiTestHarness, userId: string, flags: Array<
async function expectLimited(request: Promise<{json: ErrorResponse}>): Promise<void> {
const {json} = await request;
expect(json.code).toBe(APIErrorCodes.ACCOUNT_LIMITED);
expect(json.message).toBe('Your account is limited. Check your email for how to lift it.');
expect(json.message).toBe('Messaging is paused on your account. Check your email for a quick step to continue.');
}
describe('Account limitation', () => {
+6 -4
View File
@@ -34,7 +34,8 @@ export const Routes = {
CONNECTION_CALLBACK: '/connection-callback',
USER_PROFILE: '/users/:userId',
THEME_STUDIO: '/theme-studio',
PLUTONIUM: '/plutonium',
PLUTONIUM: '/channels/@premium',
LEGACY_PLUTONIUM: '/plutonium',
terms: () => marketingUrl('terms'),
privacy: () => marketingUrl('privacy'),
guidelines: () => marketingUrl('guidelines'),
@@ -70,11 +71,12 @@ export const Routes = {
isDMRoute: (pathname: string) => pathname.startsWith('/channels/@me'),
isFavoritesRoute: (pathname: string) => pathname.startsWith('/channels/@favorites'),
isDiscoverRoute: (pathname: string) => pathname.startsWith('/channels/@discover'),
isPlutoniumRoute: (pathname: string) => pathname === '/plutonium',
isChannelRoute: (pathname: string) => pathname.startsWith('/channels/'),
isPlutoniumRoute: (pathname: string) => pathname === '/channels/@premium',
isChannelRoute: (pathname: string) => pathname.startsWith('/channels/') && !pathname.startsWith('/channels/@premium'),
isGuildChannelRoute: (pathname: string) =>
pathname.startsWith('/channels/') &&
!pathname.startsWith('/channels/@me') &&
!pathname.startsWith('/channels/@favorites') &&
!pathname.startsWith('/channels/@discover'),
!pathname.startsWith('/channels/@discover') &&
!pathname.startsWith('/channels/@premium'),
} as const;
@@ -226,6 +226,12 @@ const plutoniumRoute = createRoute({
</DMLayout>
),
});
const legacyPlutoniumRoute = createRoute({
getParentRoute: () => guildsLayoutRoute,
id: 'legacyPlutonium',
path: Routes.LEGACY_PLUTONIUM,
onEnter: () => new Redirect(Routes.PLUTONIUM),
});
const userProfileRoute = createRoute({
getParentRoute: () => appLayoutRoute,
id: 'userProfile',
@@ -335,6 +341,7 @@ export const appRouteTree = appLayoutRoute.addChildren([
meRoute,
discoverRoute,
plutoniumRoute,
legacyPlutoniumRoute,
favoritesRoute.addChildren([favoritesChannelRoute]),
channelsRoute.addChildren([membersRoute, channelRoute.addChildren([messageRoute])]),
]),
@@ -21,7 +21,6 @@ import {type DragItem, DragItemType, type DropResult} from '@app/features/app/co
import {isCategory, isTextChannel} from '@app/features/app/components/layout/utils/ChannelOrganization';
import {getChannelUnreadState} from '@app/features/app/components/layout/utils/ChannelUnreadState';
import {VoiceChannelUserCount} from '@app/features/app/components/layout/VoiceChannelUserCount';
import {useChannelHoverPreload} from '@app/features/app/hooks/useChannelHoverPreload';
import {useContextMenuHoverState} from '@app/features/app/hooks/useContextMenuHoverState';
import {useMergeRefs} from '@app/features/app/hooks/useMergeRefs';
import {useTextOverflow} from '@app/features/app/hooks/useTextOverflow';
@@ -220,12 +219,6 @@ export const ChannelItem = observer(
const channelIsCategory = isCategory(channel);
const channelIsVoice = channelType === ChannelTypes.GUILD_VOICE;
const channelIsText = isTextChannel(channel);
const {scheduleChannelPreload, cancelChannelPreload, preloadChannelNow} = useChannelHoverPreload({
channel,
guild,
defaultHiddenForChannel: channelIsVoice,
enabled: !channelIsCategory,
});
const draggingChannel = activeDragItem?.type === DragItemType.CHANNEL ? activeDragItem : null;
const isVoiceDragActive = draggingChannel?.channelType === ChannelTypes.GUILD_VOICE;
const shouldDimForVoiceDrag = Boolean(isVoiceDragActive && channelIsText && channel.parentId !== null);
@@ -401,12 +394,11 @@ export const ChannelItem = observer(
const singleClickConnectsToVoice =
channelIsVoice && !Accessibility.voiceChannelJoinRequiresDoubleClick && !isVoiceSelected;
const navigateToChannel = useCallback(() => {
preloadChannelNow();
NavigationCommands.selectChannel(guild.id, channel.id);
if (MobileLayout.isMobileLayout()) {
LayoutCommands.updateMobileLayoutState(false, true);
}
}, [guild.id, channel.id, preloadChannelNow]);
}, [guild.id, channel.id]);
const collapseVoiceCallView = useCallback(() => {
if (!channelIsVoice) return;
CompactVoiceCallHeight.setExpandedForKey(getGuildVoiceCallExpansionKey(channel.id), false);
@@ -504,12 +496,10 @@ export const ChannelItem = observer(
const [isPointerHovered, setIsPointerHovered] = useState(false);
const handleMouseEnter = useCallback(() => {
setIsPointerHovered(true);
scheduleChannelPreload();
}, [scheduleChannelPreload]);
}, []);
const handleMouseLeave = useCallback(() => {
setIsPointerHovered(false);
cancelChannelPreload();
}, [cancelChannelPreload]);
}, []);
const hoverAffordancesActive =
allowHoverAffordances &&
(contextMenuOpen || showKeyboardAffordances || shouldShowSelectedState || isPointerHovered);
@@ -19,7 +19,6 @@ import {DragItemType} from '@app/features/app/components/layout/types/DndTypes';
import {getChannelUnreadState} from '@app/features/app/components/layout/utils/ChannelUnreadState';
import {GroupDMAvatar} from '@app/features/app/components/shared/GroupDMAvatar';
import {GuildChannelListSkeleton} from '@app/features/app/components/skeleton/GuildSidebarSkeleton';
import {useChannelHoverPreload} from '@app/features/app/hooks/useChannelHoverPreload';
import {useMergeRefs} from '@app/features/app/hooks/useMergeRefs';
import * as LinkChannelCommands from '@app/features/channel/commands/LinkChannelCommands';
import type {Channel} from '@app/features/channel/models/Channel';
@@ -55,7 +54,6 @@ import {Tooltip} from '@app/features/ui/tooltip/Tooltip';
import UserGuildSettings from '@app/features/user/state/UserGuildSettings';
import Users from '@app/features/user/state/Users';
import {FAVORITES_GUILD_ID, ME} from '@fluxer/constants/src/AppConstants';
import {ChannelTypes} from '@fluxer/constants/src/ChannelConstants';
import {msg} from '@lingui/core/macro';
import {useLingui} from '@lingui/react/macro';
import {CaretDownIcon, PlusIcon, UserPlusIcon} from '@phosphor-icons/react';
@@ -235,17 +233,11 @@ const FavoriteChannelResolvedItem = observer(
showFadedUnreadOnMutedChannels: Accessibility.showFadedUnreadOnMutedChannels,
unreadBadgesLevel,
});
const {scheduleChannelPreload, cancelChannelPreload, preloadChannelNow} = useChannelHoverPreload({
channel,
guild,
defaultHiddenForChannel: channel.type === ChannelTypes.GUILD_VOICE,
});
const handleClick = () => {
if (LinkChannelCommands.openLinkChannel(channel)) {
return;
}
markDirectSelection(DirectSelectionSurface.FAVORITES_LIST);
preloadChannelNow();
NavigationCommands.selectChannel(FAVORITES_GUILD_ID, favoriteChannel.channelId);
};
const handleContextMenu = (event: React.MouseEvent) => {
@@ -309,8 +301,6 @@ const FavoriteChannelResolvedItem = observer(
onFocus={() => setIsFocused(true)}
onBlur={() => setIsFocused(false)}
onLongPress={() => {}}
onMouseEnter={scheduleChannelPreload}
onMouseLeave={cancelChannelPreload}
data-flx="app.favorites-channel-list-content.favorite-channel-item.generic-channel-item.click"
>
<div
@@ -1,13 +1,14 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import {DirectSelectionSurface, markDirectSelection} from '@app/features/app/components/layout/DirectSelectionOrigin';
import {useGuildListItemPreload} from '@app/features/app/components/layout/sidebar_nav/UseGuildListItemPreload';
import {useContextMenuHoverState} from '@app/features/app/hooks/useContextMenuHoverState';
import {useHover} from '@app/features/app/hooks/useHover';
import type {Guild} from '@app/features/guild/models/Guild';
import GuildCount from '@app/features/guild/state/GuildCount';
import {isKeyboardActivationKey} from '@app/features/input/utils/KeyboardUtils';
import * as ImageCacheUtils from '@app/features/messaging/utils/ImageCacheUtils';
import * as NavigationCommands from '@app/features/navigation/commands/NavigationCommands';
import SelectedChannel from '@app/features/navigation/state/SelectedChannel';
import {GuildContextMenu} from '@app/features/ui/action_menu/GuildContextMenu';
import * as ContextMenuCommands from '@app/features/ui/commands/ContextMenuCommands';
import * as AvatarSourceUtils from '@app/features/user/utils/AvatarSourceUtils';
@@ -64,12 +65,12 @@ export function useGuildListItemInteraction({
}: UseGuildListItemInteractionOptions): GuildListItemInteraction {
const [hoverRef, isHovering] = useHover();
const contextMenuOpen = useContextMenuHoverState(itemRef, isDesktopLayout);
const {preloadChannelNow, selectedChannelId} = useGuildListItemPreload({
guild,
isHovering,
isMobileExperience,
isSortingList,
});
const selectedChannelId = SelectedChannel.selectedChannelIds.get(guild.id) ?? null;
useEffect(() => {
if (isMobileExperience || isSortingList || !isHovering) return;
const timeoutId = window.setTimeout(() => GuildCount.requestCounts(guild.id, {force: false}), 250);
return () => window.clearTimeout(timeoutId);
}, [guild.id, isHovering, isMobileExperience, isSortingList]);
const iconURL = AvatarSourceUtils.getGuildIconURL(guild, false);
const hoverIconURL = AvatarSourceUtils.getGuildIconURL(guild, true);
const isAnimatableIcon = hoverIconURL !== iconURL;
@@ -84,13 +85,12 @@ export function useGuildListItemInteraction({
}, [contextMenuOpen, hoverIconURL, isAnimatableIcon, isHovering, loadedAnimatedURL]);
const handleSelect = useCallback(() => {
markDirectSelection(DirectSelectionSurface.GUILD_RAIL);
preloadChannelNow();
if (isMobileExperience || selectedChannelId == null) {
NavigationCommands.selectGuild(guild.id);
return;
}
NavigationCommands.selectGuild(guild.id, selectedChannelId);
}, [guild.id, isMobileExperience, preloadChannelNow, selectedChannelId]);
}, [guild.id, isMobileExperience, selectedChannelId]);
const handleKeyDown = useCallback(
(event: React.KeyboardEvent) => {
if (!isKeyboardActivationKey(event.key)) return;
@@ -1,87 +0,0 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import {useChannelHoverPreload} from '@app/features/app/hooks/useChannelHoverPreload';
import type {Channel} from '@app/features/channel/models/Channel';
import Channels from '@app/features/channel/state/Channels';
import type {Guild} from '@app/features/guild/models/Guild';
import GuildCount from '@app/features/guild/state/GuildCount';
import {filterViewableChannels} from '@app/features/messaging/utils/ChannelShared';
import SelectedChannel from '@app/features/navigation/state/SelectedChannel';
import {ChannelTypes} from '@fluxer/constants/src/ChannelConstants';
import {useEffect, useMemo} from 'react';
interface UseGuildListItemPreloadOptions {
readonly guild: Guild;
readonly isHovering: boolean;
readonly isMobileExperience: boolean;
readonly isSortingList: boolean;
}
interface UseGuildListItemPreloadResult {
readonly preloadChannelNow: () => void;
readonly selectedChannelId: string | null;
}
function resolveSelectedChannel(selectedChannelId: string | null): Channel | null {
if (selectedChannelId == null) {
return null;
}
return Channels.getChannel(selectedChannelId) ?? null;
}
function resolveDefaultHiddenForChannel(channel: Channel | null): boolean {
if (channel == null) {
return false;
}
return channel.type === ChannelTypes.GUILD_VOICE;
}
export function useGuildListItemPreload({
guild,
isHovering,
isMobileExperience,
isSortingList,
}: UseGuildListItemPreloadOptions): UseGuildListItemPreloadResult {
const storedChannelId = SelectedChannel.selectedChannelIds.get(guild.id);
let selectedChannelId: string | null = null;
if (storedChannelId != null) {
selectedChannelId = storedChannelId;
}
const selectedChannel = resolveSelectedChannel(selectedChannelId);
const guildChannels = Channels.getGuildChannels(guild.id);
const preloadTargetChannel = useMemo(() => {
if (
selectedChannel != null &&
selectedChannel.guildId === guild.id &&
selectedChannel.type !== ChannelTypes.GUILD_CATEGORY &&
selectedChannel.type !== ChannelTypes.GUILD_LINK
) {
return selectedChannel;
}
const firstTextChannel = filterViewableChannels(guildChannels)[0];
if (firstTextChannel == null) {
return null;
}
return firstTextChannel;
}, [guild.id, guildChannels, selectedChannel]);
const {scheduleChannelPreload, cancelChannelPreload, preloadChannelNow} = useChannelHoverPreload({
channel: preloadTargetChannel,
guild,
defaultHiddenForChannel: resolveDefaultHiddenForChannel(preloadTargetChannel),
enabled: !guild.unavailable && !isSortingList,
});
useEffect(() => {
if (isMobileExperience || isSortingList || !isHovering) {
cancelChannelPreload();
return;
}
scheduleChannelPreload();
return cancelChannelPreload;
}, [cancelChannelPreload, isHovering, isMobileExperience, isSortingList, scheduleChannelPreload]);
useEffect(() => {
if (isMobileExperience || isSortingList || !isHovering) return;
const timeoutId = window.setTimeout(() => GuildCount.requestCounts(guild.id, {force: false}), 250);
return () => window.clearTimeout(timeoutId);
}, [guild.id, isHovering, isMobileExperience, isSortingList]);
return {preloadChannelNow, selectedChannelId};
}
@@ -1,73 +0,0 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
import type {Channel} from '@app/features/channel/models/Channel';
import type {Guild} from '@app/features/guild/models/Guild';
import {ensureMembersForMessages} from '@app/features/messaging/commands/MessageCommands';
import Messages from '@app/features/messaging/state/MessagingMessages';
import {ChannelTypes} from '@fluxer/constants/src/ChannelConstants';
import {useCallback, useEffect, useRef} from 'react';
const CHANNEL_HOVER_PRELOAD_DELAY_MS = 220;
interface UseChannelHoverPreloadOptions {
channel: Channel | null | undefined;
guild?: Guild | null;
defaultHiddenForChannel?: boolean;
enabled?: boolean;
preloadMemberList?: boolean;
preloadMessages?: boolean;
}
export function ensureMembersForCachedChannelMessages(channelId: string): void {
const messages = Messages.getCachedMessages(channelId);
if (!messages || messages.length === 0) {
return;
}
void ensureMembersForMessages(messages.toArray());
}
export function useChannelHoverPreload({
channel,
guild = null,
enabled = true,
preloadMessages = true,
}: UseChannelHoverPreloadOptions): {
scheduleChannelPreload: () => void;
cancelChannelPreload: () => void;
preloadChannelNow: () => void;
} {
const timerRef = useRef<number | null>(null);
const cancelChannelPreload = useCallback(() => {
if (timerRef.current == null || typeof window === 'undefined') {
timerRef.current = null;
return;
}
window.clearTimeout(timerRef.current);
timerRef.current = null;
}, []);
const preloadChannelNow = useCallback(() => {
cancelChannelPreload();
if (
!enabled ||
!channel ||
channel.type === ChannelTypes.GUILD_CATEGORY ||
channel.type === ChannelTypes.GUILD_LINK
) {
return;
}
if (preloadMessages) {
if (!Messages.preloadLatestPage(channel.id, guild?.id ?? channel.guildId ?? null)) {
ensureMembersForCachedChannelMessages(channel.id);
}
}
}, [cancelChannelPreload, channel, enabled, guild, preloadMessages]);
const scheduleChannelPreload = useCallback(() => {
if (!enabled || !channel || typeof window === 'undefined') {
return;
}
cancelChannelPreload();
timerRef.current = window.setTimeout(preloadChannelNow, CHANNEL_HOVER_PRELOAD_DELAY_MS);
}, [cancelChannelPreload, channel, enabled, preloadChannelNow]);
useEffect(() => cancelChannelPreload, [cancelChannelPreload]);
return {scheduleChannelPreload, cancelChannelPreload, preloadChannelNow};
}
+31 -10
View File
@@ -6,6 +6,8 @@ import {
shouldShowNativeDesktopUpdateDownloadProgress,
shouldShowNativeDesktopUpdateInApp,
} from '@app/features/app/utils/UpdaterPlatformUtils';
import {WORKER_NAVIGATION_CACHE_PREFIX} from '@app/features/platform/service_worker/WorkerCacheCleanup';
import {getProtectedCacheStorage} from '@app/features/platform/state/ProtectedWebStorage';
import type {UpdaterContext, UpdaterDownloadOption, UpdaterEvent} from '@app/features/platform/types/Electron';
import {Logger} from '@app/features/platform/utils/AppLogger';
import {getClientInfo} from '@app/features/platform/utils/ClientInfo';
@@ -49,9 +51,10 @@ export const DOWNLOADING_UPDATE_DESCRIPTOR = msg({
});
const logger = new Logger('Updater');
const CHECK_INTERVAL_MS = 30 * 60 * 1000;
const CHECK_INTERVAL_MS = 5 * 60 * 1000;
const MIN_CHECK_INTERVAL_MS = 60 * 1000;
const MANUAL_DOWNLOAD_REFRESH_TIMEOUT_MS = 5 * 1000;
const WEB_CHECK_TIMEOUT_MS = 15 * 1000;
const VERSION_ENDPOINT = '/version.json';
const CURRENT_BUILD_VERSION = Config.PUBLIC_BUILD_VERSION ?? null;
const ALLOWED_WEB_UPDATE_HOSTS = new Set([
@@ -61,6 +64,21 @@ const ALLOWED_WEB_UPDATE_HOSTS = new Set([
'canary.fluxer.com',
]);
async function dropCachedAppShell(): Promise<void> {
const browserCaches = getProtectedCacheStorage();
if (!browserCaches) return;
try {
const cacheNames = await browserCaches.keys();
await Promise.all(
cacheNames
.filter((cacheName) => cacheName.startsWith(WORKER_NAVIGATION_CACHE_PREFIX))
.map((cacheName) => browserCaches.delete(cacheName)),
);
} catch (error) {
logger.warn('Failed to drop the cached app shell before reloading', error);
}
}
function normalizeUpdaterContext(context: NativeUpdaterEvent['context']): UpdaterContext {
switch (context) {
case 'user':
@@ -487,11 +505,9 @@ class Updater {
shouldCheckNative ? this.checkNativeUpdate(checkContext) : Promise.resolve(null),
this.checkWebUpdate(),
]);
this.transition({
type: 'web.checked',
available: webResult?.available ?? false,
version: webResult?.version ?? null,
});
if (webResult) {
this.transition({type: 'web.checked', available: webResult.available, version: webResult.version});
}
if (userInitiated && (!shouldCheckNative || (!this.isChecking && !this.nativeCheckFailed))) {
this.showCurrentUpdateState();
}
@@ -521,7 +537,7 @@ class Updater {
private async checkWebUpdate(): Promise<{
available: boolean;
version: string | null;
}> {
} | null> {
if (!ALLOWED_WEB_UPDATE_HOSTS.has(window.location.host)) {
return {available: false, version: null};
}
@@ -529,24 +545,28 @@ class Updater {
const response = await fetch(VERSION_ENDPOINT, {
cache: 'no-store',
headers: {'Cache-Control': 'no-cache'},
signal: AbortSignal.timeout(WEB_CHECK_TIMEOUT_MS),
});
if (!response.ok) {
logger.debug('Version endpoint not available');
return {available: false, version: null};
return null;
}
const payload = (await response.json()) as {
version?: string;
buildVersion?: string;
};
const version = payload.version ?? payload.buildVersion ?? null;
const updateAvailable = Boolean(version && CURRENT_BUILD_VERSION && version !== CURRENT_BUILD_VERSION);
if (!version) {
return null;
}
const updateAvailable = Boolean(CURRENT_BUILD_VERSION && version !== CURRENT_BUILD_VERSION);
return {
available: updateAvailable,
version,
};
} catch (error) {
logger.debug('Failed to fetch version info silently:', error);
return {available: false, version: null};
return null;
}
}
@@ -586,6 +606,7 @@ class Updater {
}
if (this.updateInfo.web.available) {
logger.info('Applying web update, reloading...');
await dropCachedAppShell();
window.location.reload();
return;
}
@@ -145,7 +145,7 @@ function getCurrentInviteDestinationKey(): string | null {
if (guildId === '@me') {
return channelId ? createBotInviteDestinationKey('group_dm', channelId) : null;
}
if (guildId !== '@favorites' && guildId !== '@discover') {
if (guildId !== '@favorites' && guildId !== '@discover' && guildId !== '@premium') {
return createBotInviteDestinationKey('guild', guildId);
}
return null;
@@ -29,7 +29,6 @@ import {GuildIcon} from '@app/features/guild/components/popouts/GuildIcon';
import * as InviteUtils from '@app/features/invite/utils/InviteUtils';
import {SafeMarkdown} from '@app/features/messaging/components/markdown';
import {MarkdownContext} from '@app/features/messaging/components/markdown/renderers/RendererTypes';
import {useMatureMedia} from '@app/features/messaging/hooks/useMatureMedia';
import {useMessageReactions as useMessageReactionsSnapshot} from '@app/features/messaging/hooks/useMessageReactionStore';
import type {Message} from '@app/features/messaging/models/MessagingMessage';
import {extractEmbeddableCodeLinkContent} from '@app/features/messaging/utils/EmbeddableCodeLinkContent';
@@ -38,7 +37,6 @@ import {buildMessageSnapshotCopyText} from '@app/features/messaging/utils/Messag
import {goToMessage} from '@app/features/messaging/utils/MessageNavigator';
import {canonicalizeMediaUrl, useSpoilerState} from '@app/features/messaging/utils/SpoilerUtils';
import markupStyles from '@app/features/theme/styles/Markup.module.css';
import matureStyles from '@app/features/theme/styles/MatureBlur.module.css';
import messageStyles from '@app/features/theme/styles/Message.module.css';
import * as ThemeUtils from '@app/features/theme/utils/ThemeUtils';
import {StickerInlineMenuItems} from '@app/features/ui/action_menu/items/StickerContextMenuItems';
@@ -507,7 +505,6 @@ const StickerItem = observer(({sticker, message, sourceChannel, handleDelete}: S
const stickerRecord = Sticker.getStickerById(sticker.id);
const isMobile = MobileLayout.enabled;
const [isBottomSheetOpen, setIsBottomSheetOpen] = useState(false);
const {shouldBlur, shouldBlock, canReveal, reveal} = useMatureMedia(false, message.channelId);
const handleContextMenu = (e: React.MouseEvent) => {
e.preventDefault();
e.stopPropagation();
@@ -538,37 +535,17 @@ const StickerItem = observer(({sticker, message, sourceChannel, handleDelete}: S
/>
));
};
const handleRevealClick = useCallback(
(e: React.MouseEvent) => {
if (shouldBlur && canReveal) {
e.preventDefault();
e.stopPropagation();
reveal();
}
},
[shouldBlur, canReveal, reveal],
);
const handleMobileClick = useCallback(
(e: React.MouseEvent) => {
if (shouldBlur) {
handleRevealClick(e);
return;
}
setIsBottomSheetOpen(true);
},
[shouldBlur, handleRevealClick],
);
const handleMobileClick = useCallback(() => {
setIsBottomSheetOpen(true);
}, []);
const handleCloseBottomSheet = useCallback(() => {
setIsBottomSheetOpen(false);
}, []);
if (shouldBlock) {
return null;
}
const stickerImage = (
<img
src={stickerUrl}
alt={stickerRecord?.description || sticker.name}
className={clsx(styles.stickerImage, shouldBlur && matureStyles.matureStickerBlurred)}
className={styles.stickerImage}
width="160"
height="160"
data-flx="channel.message-attachments.sticker-item.sticker-image"
@@ -601,16 +578,13 @@ const StickerItem = observer(({sticker, message, sourceChannel, handleDelete}: S
</>
);
}
const renderHoverTooltip = () =>
shouldBlur ? (
sticker.name
) : (
<ExpressionHoverTooltipContent
displayName={sticker.name}
previewUrl={previewUrl}
data-flx="channel.message-attachments.sticker-item.expression-hover-tooltip-content"
/>
);
const renderHoverTooltip = () => (
<ExpressionHoverTooltipContent
displayName={sticker.name}
previewUrl={previewUrl}
data-flx="channel.message-attachments.sticker-item.expression-hover-tooltip-content"
/>
);
const renderInfoCard = ({onClose}: {onClose: () => void}) => (
<ExpressionInfoCard
kind="sticker"
@@ -624,7 +598,6 @@ const StickerItem = observer(({sticker, message, sourceChannel, handleDelete}: S
);
return (
<ExpressionInfoPopout
canOpenCard={!shouldBlur}
renderTooltip={renderHoverTooltip}
renderCard={renderInfoCard}
data-flx="channel.message-attachments.sticker-item.expression-info-popout"
@@ -635,7 +608,6 @@ const StickerItem = observer(({sticker, message, sourceChannel, handleDelete}: S
className={clsx(styles.stickerWrapper, styles.stickerWrapperInteractive)}
data-message-sticker="true"
onContextMenu={handleContextMenu}
onClick={handleRevealClick}
data-flx="channel.message-attachments.sticker-item.sticker-wrapper.reveal-click"
{...interactionHandlers}
>
@@ -19,11 +19,9 @@ import {getCachedNumberFormat} from '@app/features/i18n/utils/IntlCache';
import * as ReactionCommands from '@app/features/messaging/commands/ReactionCommands';
import {ReactionTooltip} from '@app/features/messaging/components/popouts/ReactionTooltip';
import {ReactionImage} from '@app/features/messaging/components/ReactionImage';
import {useMatureMedia} from '@app/features/messaging/hooks/useMatureMedia';
import {useMessageReactions as useMessageReactionsSnapshot} from '@app/features/messaging/hooks/useMessageReactionStore';
import type {Message} from '@app/features/messaging/models/MessagingMessage';
import {getEmojiName, getReactionKey, useEmojiURL} from '@app/features/messaging/utils/ReactionUtils';
import matureStyles from '@app/features/theme/styles/MatureBlur.module.css';
import {EmojiContextMenuItems} from '@app/features/ui/action_menu/items/EmojiContextMenuItems';
import * as ContextMenuCommands from '@app/features/ui/commands/ContextMenuCommands';
import FocusRing from '@app/features/ui/focus_ring/FocusRing';
@@ -137,7 +135,6 @@ const MessageReactionItem = observer(
};
const emojiName = getEmojiName(reaction.emoji);
const emojiUrl = useEmojiURL({emoji: reaction.emoji, isHovering: isHovering || tooltipHovering});
const {shouldBlur: reactionShouldBlur, shouldBlock: reactionShouldBlock} = useMatureMedia(false, message.channelId);
const variants = {
up: {y: -20, opacity: 0},
down: {y: 20, opacity: 0},
@@ -175,16 +172,14 @@ const MessageReactionItem = observer(
data-flx="channel.message-reactions.message-reaction-item.reaction-inner"
>
{emojiUrl ? (
reactionShouldBlock ? null : (
<ReactionImage
src={emojiUrl}
alt={emojiName}
aria-hidden={true}
draggable={false}
className={clsx('emoji', styles.emoji, reactionShouldBlur && matureStyles.matureBlurred)}
data-flx="channel.message-reactions.message-reaction-item.emoji"
/>
)
<ReactionImage
src={emojiUrl}
alt={emojiName}
aria-hidden={true}
draggable={false}
className={clsx('emoji', styles.emoji)}
data-flx="channel.message-reactions.message-reaction-item.emoji"
/>
) : null}
<div
className={styles.countWrapper}
@@ -47,7 +47,7 @@ export const NOT_A_MEMBER_LONG_ENOUGH_DESCRIPTOR = msg({
comment: 'Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.',
});
export const ACCOUNT_LIMITED_DESCRIPTOR = msg({
message: 'Account limited',
message: 'Messaging paused',
comment: 'Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.',
});
export const SEND_MESSAGES_DISABLED_DESCRIPTOR = msg({
@@ -5,7 +5,6 @@ import {LongPressable} from '@app/features/app/components/LongPressable';
import {getChannelUnreadState} from '@app/features/app/components/layout/utils/ChannelUnreadState';
import {CustomStatusDisplay} from '@app/features/app/components/shared/custom_status_display/CustomStatusDisplay';
import {GroupDMAvatar} from '@app/features/app/components/shared/GroupDMAvatar';
import {useChannelHoverPreload} from '@app/features/app/hooks/useChannelHoverPreload';
import {useContextMenuHoverState} from '@app/features/app/hooks/useContextMenuHoverState';
import {UserTag} from '@app/features/channel/components/ChannelUserTag';
import styles from '@app/features/channel/components/direct_message/DirectMessageList.module.css';
@@ -199,15 +198,9 @@ const ResolvedDMListItem = observer(function ResolvedDMListItem({
leaveGroup,
i18n,
});
const {scheduleChannelPreload, cancelChannelPreload, preloadChannelNow} = useChannelHoverPreload({
channel,
guild: null,
preloadMemberList: false,
});
const handleNavigate = useCallback(() => {
preloadChannelNow();
handlers.navigateTo();
}, [handlers.navigateTo, preloadChannelNow]);
}, [handlers.navigateTo]);
const mobileMenuGroups = buildMobileMenuGroups({
channel,
recipient,
@@ -507,8 +500,6 @@ const ResolvedDMListItem = observer(function ResolvedDMListItem({
)}
onClick={handleNavigate}
onContextMenu={handleContextMenu}
onMouseEnter={scheduleChannelPreload}
onMouseLeave={cancelChannelPreload}
onFocus={() => setIsFocused(true)}
onBlur={() => setIsFocused(false)}
data-dm-list-focus-item="true"
@@ -11,6 +11,7 @@ import type {FlatEmoji} from '@app/features/emoji/types/EmojiTypes';
import {checkEmojiAvailability} from '@app/features/expressions/utils/ExpressionPermissionUtils';
import {getEmojiDisplayDataWithSkinTone} from '@app/features/expressions/utils/SkinToneUtils';
import UnicodeEmojis, {EMOJI_SPRITES} from '@app/features/expressions/utils/UnicodeEmojis';
import {loadImage} from '@app/features/messaging/utils/ImageCacheUtils';
import {getEmojiRenderUrl} from '@app/features/messaging/utils/markdown/EmojiDetector';
import {EmojiContextMenuItems} from '@app/features/ui/action_menu/items/EmojiContextMenuItems';
import * as ContextMenuCommands from '@app/features/ui/commands/ContextMenuCommands';
@@ -25,9 +26,34 @@ type PickerEmojiImageProps = React.ImgHTMLAttributes<HTMLImageElement> & {
alt: string;
};
const PICKER_IMAGE_RETRY_LIMIT = 3;
const PickerEmojiImage = ({src, alt, ...props}: PickerEmojiImageProps) => {
const imageRef = useRef<HTMLImageElement | null>(null);
const hasLoadedRef = useRef(false);
const retriesRef = useRef(0);
const cancelRetryRef = useRef<(() => void) | null>(null);
useEffect(() => {
retriesRef.current = 0;
return () => {
cancelRetryRef.current?.();
cancelRetryRef.current = null;
};
}, [src]);
const handleError = () => {
if (retriesRef.current >= PICKER_IMAGE_RETRY_LIMIT) {
return;
}
retriesRef.current += 1;
cancelRetryRef.current?.();
cancelRetryRef.current = loadImage(src, () => {
cancelRetryRef.current = null;
const image = imageRef.current;
if (image != null && image.getAttribute('src') === src) {
image.src = src;
}
});
};
const handleLoad = (event: React.SyntheticEvent<HTMLImageElement>) => {
const view = event.currentTarget?.ownerDocument?.defaultView ?? window;
view.requestAnimationFrame(() => {
@@ -47,6 +73,7 @@ const PickerEmojiImage = ({src, alt, ...props}: PickerEmojiImageProps) => {
alt={alt}
className={hasLoadedRef.current ? styles.emojiImage : clsx(styles.emojiImage, styles.emojiImageLoading)}
onLoad={hasLoadedRef.current ? undefined : handleLoad}
onError={hasLoadedRef.current ? undefined : handleError}
/>
);
};
@@ -23,17 +23,3 @@
line-height: 1.25rem;
color: var(--text-primary-muted);
}
.sectionDescriptionMultiline {
font-size: 0.875rem;
line-height: 1.25rem;
color: var(--text-primary-muted);
}
.sectionDescriptionMultiline p {
margin-bottom: 0.5rem;
}
.sectionDescriptionMultiline p:last-child {
margin-bottom: 0;
}
@@ -284,27 +284,27 @@ const GuildModerationTab: React.FC<{guildId: string}> = observer(({guildId}) =>
<h3 className={styles.sectionTitle} data-flx="guild.guild-tabs.guild-moderation-tab.section-title">
<Trans>Member verification</Trans>
</h3>
<div
className={styles.sectionDescriptionMultiline}
data-flx="guild.guild-tabs.guild-moderation-tab.section-description-multiline"
<p
className={styles.sectionDescription}
data-flx="guild.guild-tabs.guild-moderation-tab.section-description--verification"
>
<p data-flx="guild.guild-tabs.guild-moderation-tab.p">
<Trans>Choose what members must have before they can post or DM community members.</Trans>
</p>
<p data-flx="guild.guild-tabs.guild-moderation-tab.p--2">
<Trans>
Choose what members must have before they can post or DM community members. Members with roles can
bypass these checks. For public spaces, we recommend enabling verification.
</Trans>
</p>
{isDiscoverable && (
<p
className={styles.sectionDescription}
style={{fontStyle: 'italic'}}
data-flx="guild.guild-tabs.guild-moderation-tab.section-description--verification-discovery"
>
<Trans>
Members with roles can bypass these checks. For public spaces, we recommend enabling verification.
Communities listed in Discovery require at least email verification. None cannot be selected while
Discovery is enabled.
</Trans>
</p>
{isDiscoverable && (
<p data-flx="guild.guild-tabs.guild-moderation-tab.p--3">
<Trans>
Communities listed in Discovery require at least email verification. None cannot be selected while
Discovery is enabled.
</Trans>
</p>
)}
</div>
)}
<Controller
name="verification_level"
control={form.control}
@@ -21,7 +21,7 @@ msgstr "... تشغيل الوضع المكثف. رائع!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, zero {# صورة} one {# صورة} two {# صورتين} few {# صور} many {# صورة} other {# صورة}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, zero {# رسالة من مرسلين مزعجين محتملين} one {رسالة واحدة من مرسل مزعج محتمل} two {رسالتان من مرسلين مزعجين محتملين} few {# رسائل من مرسلين مزعجين محتملين} many {# رسالة من مرسلين مزعجين محتملين} other {# رسالة من مرسلين مزعجين محتملين}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, zero {# تفاعل} one {تفاعل واحد} two {تفاعلان} few {# تفاعلات} many {# تفاعلًا} other {# تفاعل}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}، {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}، {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "لا يزال <0>{username}</0> في المجموعة. حاول مرة
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>مُعاد توجيهها من</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "بيانات الحساب"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "الحساب محدود"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "الفئات"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "الفئة"
@@ -7200,7 +7195,7 @@ msgstr "تُطبّق التغييرات فورًا على العميل قيد ا
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "القناة"
@@ -7768,9 +7763,9 @@ msgstr "اختر ما يمكن أن يفعله {clientLabel} في مجتمعك.
msgid "Choose what friends see in their active now panel"
msgstr "اختر ما يراه أصدقاؤك في لوحة \"نشط الآن\""
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "اختر ما يجب أن يستوفيه الأعضاء قبل أن يتمكنوا من النشر أو مراسلة أعضاء المجتمع مباشرة."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "اختر ما يجب أن يمتلكه الأعضاء قبل أن يتمكنوا من النشر أو إرسال رسائل مباشرة لأعضاء المجتمع. يمكن للأعضاء الذين لديهم أدوار تجاوز هذه الضوابط. بالنسبة للمساحات العامة، نوصي بتمكين التحقق."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "إغلاق الحساب"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "إغلاق الرسالة المباشرة مع {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "طي الرسائل غير المقروءة في {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "مطوي"
@@ -8643,7 +8638,7 @@ msgstr "يتم إخفاء المجتمعات والقنوات التي لا يم
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "المجتمعات المدرجة في الاكتشاف ملزمة بفحص رسائل جميع الأعضاء. لا يمكن تغيير هذا الإعداد أثناء تفعيل الاكتشاف."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "تتطلب المجتمعات المدرجة في الاكتشاف التحقق من البريد الإلكتروني على الأقل. لا يمكن اختيار \"بلا\" أثناء تفعيل الاكتشاف."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "الاتصال بـ{providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "متصل"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "رسالة مباشرة"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "ر.م"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "جارٍ تنزيل تحديث تطبيق سطح المكتب: {percent}% ({formatBytes} / {formatBytes2} بسرعة {formatBytes3}/ث)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "جارٍ تنزيل تحديث تطبيق سطح المكتب…"
@@ -13294,7 +13289,7 @@ msgstr "تعديل المرفق"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "تعديل فارغ"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "المفضلة فارغة"
@@ -14608,7 +14603,7 @@ msgstr "توسيع الرسائل غير المقروءة في {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "موسّعة"
@@ -15849,7 +15844,7 @@ msgstr "إعادة توجيه الوسائط"
msgid "Forward message"
msgstr "إعادة توجيه الرسالة"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "مُعاد توجيهها"
@@ -18624,7 +18619,7 @@ msgstr "إخفاء الدعوات"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "تتم إزالة الأعضاء عند عدم الاتصال بالإن
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "يمكن للأعضاء الذين لديهم إذن \"{pinMessagesPermissionLabel}\" تثبيت الرسائل للجميع."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "يمكن للأعضاء ذوي الأدوار تجاوز هذه الفحوصات. للمساحات العامة، نوصي بتمكين التحقق."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "يتم نسخ الرسائل المنشورة في قنوات الإعل
msgid "Messages you can bookmark"
msgstr "الرسائل التي يمكنك تمييزها"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "إرسال الرسائل متوقف مؤقتًا"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "إرسال الرسائل متوقف مؤقتًا في حسابك. ستجد في بريدك الإلكتروني خطوة سريعة واحدة للمتابعة."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "إرسال الرسائل متوقف مؤقتًا"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "كتم صوت البث"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "مكتوم"
@@ -23984,7 +23990,7 @@ msgstr "فتح تفاصيل القناة لـ {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "فتح الدردشة"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "البينج: {latency} مللي ثانية"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "مثبتة"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "اضغط على متابعة لاستخدام مفتاح المرور الخاص بك."
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "اضغط لإضافة رد فعل"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "اضغط لإزالة رد الفعل"
@@ -29530,10 +29536,10 @@ msgstr "نص قابل للتحديد"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "محدد"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "تم الإرسال"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "أرسل مرفقًا"
@@ -36228,11 +36234,11 @@ msgstr "تم إلغاء تثبيت المحادثة الجماعية"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "غير مقروءة"
@@ -38120,7 +38126,7 @@ msgstr "مكالمة صوتية. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "قناة صوتية"
@@ -39163,7 +39169,7 @@ msgstr "أمس في {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "أنت"
@@ -40067,16 +40073,6 @@ msgstr "حسابك"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "تم ربط حسابك بنجاح. يمكنك الآن إغلاق علامة التبويب هذه والعودة إلى التطبيق."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "حسابك محدود"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "حسابك محدود. تحقق من بريدك الإلكتروني لمعرفة كيفية رفعه."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "لم تتم المطالبة بحسابك بعد. بدون بريد إلكتروني وكلمة مرور، لن تتمكن من تسجيل الدخول من أجهزة أخرى وقد تفقد الوصول إلى حسابك. طالب بحسابك الآن لتأمينه."
@@ -1413,9 +1413,6 @@
{
"msgid": "Accepted"
},
{
"msgid": "Account limited"
},
{
"msgid": "Add a Klipy API key to enable GIF search at runtime."
},
@@ -1773,6 +1770,9 @@
{
"msgid": "Choose the premium model"
},
{
"msgid": "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
},
{
"msgid": "Choose where its published messages should go. You can unfollow any time in Community settings → Webhooks."
},
@@ -2382,6 +2382,15 @@
{
"msgid": "Messages you can bookmark"
},
{
"msgid": "Messaging is paused"
},
{
"msgid": "Messaging is paused on your account. Check your email for a quick step to continue."
},
{
"msgid": "Messaging paused"
},
{
"msgid": "Microphone ({deviceLabel})"
},
@@ -3705,12 +3714,6 @@
{
"msgid": "YouTube enrichment"
},
{
"msgid": "Your account is limited"
},
{
"msgid": "Your account is limited. Check your email for how to lift it."
},
{
"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."
},
@@ -21,7 +21,7 @@ msgstr "... включиш сбития режим. Супер!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# изображение} other {# изображения}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# потенциално спам съобщение} other {# потенциални спам съобщения}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# реакция} other {# реакции}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> все още е в групата. Опитай от
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Препратено от</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Данни за акаунта"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "Акаунтът е ограничен"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Категории"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "категория"
@@ -7200,7 +7195,7 @@ msgstr "Промените се прилагат незабавно към ак
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "канал"
@@ -7768,9 +7763,9 @@ msgstr "Избери какво може да прави {clientLabel} в общ
msgid "Choose what friends see in their active now panel"
msgstr "Избери какво виждат приятелите ти в панела „Активни сега“"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Избери какво трябва да имат членовете, преди да могат да публикуват или да изпращат DM на членове на общността."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Изберете какво трябва да имат членовете, преди да могат да публикуват или да изпращат лични съобщения до членове на общността. Членовете с роли могат да заобиколят тези проверки. За публични пространства препоръчваме да активирате верификация."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Закриване на акаунт"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Затваряне на директното съобщение с {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Свиване на непрочетените съобщения за {
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "свито"
@@ -8643,7 +8638,7 @@ msgstr "Общности и канали, където не можете да у
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Общностите, включени в Откриване, трябва да сканират съобщенията от всички членове. Тази настройка не може да се променя, докато Откриване е включено."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Общностите, включени в Откриване, изискват поне потвърждение на имейл. Докато Откриване е включено, не може да се избере „Няма“."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Свързване с {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "свързан"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Изтегляне на актуализация за настолното приложение: {percent}% ({formatBytes} / {formatBytes2} при {formatBytes3}/сек)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Изтегляне на актуализация за настолното приложение…"
@@ -13294,7 +13289,7 @@ msgstr "Редактиране на прикачен файл"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Празна редакция"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Няма любими"
@@ -14608,7 +14603,7 @@ msgstr "Разгъване на непрочетените съобщения з
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "разгънато"
@@ -15849,7 +15844,7 @@ msgstr "Препращане на медия"
msgid "Forward message"
msgstr "Препращане на съобщение"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Препратено"
@@ -18624,7 +18619,7 @@ msgstr "Маскиране на покани"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Членовете се премахват, когато излязат
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Членовете с „{pinMessagesPermissionLabel}“ могат да закачат съобщения за всички."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Членовете с роли могат да заобиколят тези проверки. За публични пространства препоръчваме да включиш потвърждението."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Съобщенията, публикувани в тези канали
msgid "Messages you can bookmark"
msgstr "Съобщения, които можете да запазите"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Изпращането на съобщения е на пауза"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Изпращането на съобщения от акаунта ти е на пауза. Погледни имейла си: остава само една бърза стъпка, за да продължиш."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Изпращането на съобщения е на пауза"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Изключване на звука на стрийма"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "заглушено"
@@ -23984,7 +23990,7 @@ msgstr "Отваряне на подробности за канала „{chann
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Отваряне на чата"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Пинг: {latency} мс"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "закачено"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "Натисни „Продължи“, за да използваш своя ключ за достъп."
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "натисни, за да добавиш реакция"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "натисни, за да премахнеш реакцията"
@@ -29530,10 +29536,10 @@ msgstr "Избираем текст"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "избрано"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Изпратено"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Изпрати прикачен файл"
@@ -36228,11 +36234,11 @@ msgstr "Груповото DM е откачено"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "непрочетени"
@@ -38120,7 +38126,7 @@ msgstr "Гласово повикване. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "гласов канал"
@@ -39163,7 +39169,7 @@ msgstr "Вчера в {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Ти"
@@ -40067,16 +40073,6 @@ msgstr "Твоят акаунт"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Акаунтът ти е свързан успешно. Вече можеш да затвориш този раздел и да се върнеш в приложението."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Вашият акаунт е с ограничени възможности"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Вашият акаунт е ограничен. Проверете имейла си за информация как да го премахнете."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Акаунтът ти още не е заявен. Без имейл и парола няма да можеш да влизаш от други устройства и може да загубиш достъп до акаунта си. Заяви акаунта си сега, за да го защитиш."
@@ -21,7 +21,7 @@ msgstr "... zapnout zhuštěný režim. Super!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# obrázek} few {# obrázky} many {# obrázku} other {# obrázků}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# zpráva od možného spammera} few {# zprávy od možného spammera} many {# zprávy od možného spammera} other {# zpráv od možného spammera}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reakce} few {# reakce} many {# reakce} other {# reakcí}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> je stále ve skupině. Zkuste to znovu za chvíli."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Přeposláno z</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Údaje o účtu"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Účet slouží k rozesílání spamu, podvodům nebo zneužívání platformy."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Účet omezen"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategorie"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategorie"
@@ -7200,7 +7195,7 @@ msgstr "Změny se okamžitě projeví v běžícím klientovi."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kanál"
@@ -7768,9 +7763,9 @@ msgstr "Vyberte, co může {clientLabel} dělat ve vaší komunitě. Zrušte za
msgid "Choose what friends see in their active now panel"
msgstr "Vyberte, co přátelé uvidí na panelu „Právě aktivní“"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Zvolte, co musí mít členové, než budou moct přispívat nebo posílat přímé zprávy členům komunity."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Vyberte, co musí mít členové, než budou moci posílat příspěvky nebo soukromé zprávy členům komunity. Členové s rolemi mohou tyto kontroly přeskočit. Pro veřejné prostory doporučujeme povolit ověření."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Zavřít účet"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Zavřít soukromou konverzaci s uživatelem {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Sbalit nepřečtené zprávy pro {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "sbaleno"
@@ -8643,7 +8638,7 @@ msgstr "Komunity a kanály, kde nemůžete spravovat webhooky, jsou skryté."
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Komunity uvedené v Objevování musí kontrolovat zprávy všech členů. Toto nastavení nelze změnit, dokud je Objevování zapnuté."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Komunity uvedené v Objevování vyžadují alespoň ověření e-mailu. Pokud je Objevování zapnuté, nelze vybrat možnost „Žádné“."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Propojit s {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "připojeno"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "SZ"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Stahování aktualizace desktopové aplikace: {percent} % ({formatBytes} / {formatBytes2} rychlostí {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Stahování aktualizace desktopové aplikace…"
@@ -13294,7 +13289,7 @@ msgstr "Upravit přílohu"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Prázdná úprava"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Oblíbené položky jsou prázdné"
@@ -14608,7 +14603,7 @@ msgstr "Rozbalit nepřečtené zprávy pro {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "rozbaleno"
@@ -15849,7 +15844,7 @@ msgstr "Přeposlat médium"
msgid "Forward message"
msgstr "Přeposlat zprávu"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Přeposláno"
@@ -18624,7 +18619,7 @@ msgstr "Maskování pozvánek"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Členové jsou odebráni, když jsou offline, pokud jim není přidělen
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Členové s oprávněním „{pinMessagesPermissionLabel}“ mohou připínat zprávy pro všechny."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Členové s rolemi mohou tyto kontroly obejít. Pro veřejné prostory doporučujeme povolit ověření."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Zprávy publikované v těchto kanálech pro oznámení se kopírují do
msgid "Messages you can bookmark"
msgstr "Zprávy, které si můžete uložit do záložek"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Posílání zpráv je na pauze"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "U vašeho účtu je posílání zpráv na pauze. Podívejte se do e-mailu: stačí jeden rychlý krok a můžete pokračovat."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Zasílání zpráv je v této komunitě dočasně pozastaveno."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Posílání zpráv je na pauze"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Vypnout zvuk streamu"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "ztlumeno"
@@ -23984,7 +23990,7 @@ msgstr "Otevřít podrobnosti kanálu {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Otevřít chat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "připnuto"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "klepnutím přidáte reakci"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "klepnutím odeberete reakci"
@@ -29530,10 +29536,10 @@ msgstr "Text, který lze označit"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "vybráno"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Odesláno"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Odeslal(a) přílohu"
@@ -36228,11 +36234,11 @@ msgstr "Skupinová konverzace odepnuta"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "nepřečteno"
@@ -38120,7 +38126,7 @@ msgstr "Hlasový hovor. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "hlasový kanál"
@@ -39163,7 +39169,7 @@ msgstr "Včera v {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Vy"
@@ -40067,16 +40073,6 @@ msgstr "Váš účet"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Váš účet byl úspěšně propojen. Nyní můžete zavřít tuto kartu a vrátit se do aplikace."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Váš účet má omezení"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Váš účet je omezený. Zkontrolujte si e-mail, jak omezení zrušit."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Registrace vašeho účtu zatím není dokončená. Bez e-mailu a hesla se nebudete moci přihlásit z jiných zařízení a mohli byste ztratit přístup ke svému účtu. Dokončete registraci svého účtu a zabezpečte ho."
@@ -21,7 +21,7 @@ msgstr "... slå kompakt visning til. Fedt!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# billede} other {# billeder}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# besked fra en mulig spammer} other {# beskeder fra mulige spammere}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reaktion} other {# reaktioner}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> er stadig i gruppen. Prøv igen om et øjeblik."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Videresendt fra</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Kontodata"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Kontoen eksisterer for at spamme, svindle eller misbruge platformen."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Konto begrænset"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategorier"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategori"
@@ -7200,7 +7195,7 @@ msgstr "Ændringer anvendes med det samme i den aktive klient."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kanal"
@@ -7768,9 +7763,9 @@ msgstr "Vælg, hvad {clientLabel} kan gøre i dit fællesskab. Fjern markeringen
msgid "Choose what friends see in their active now panel"
msgstr "Vælg, hvad venner ser i panelet Aktiv nu"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Vælg, hvilke krav medlemmer skal opfylde, før de kan skrive beskeder eller sende direkte beskeder til medlemmer af fællesskabet."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Vælg, hvad medlemmer skal have, før de kan poste eller sende direkte beskeder til community-medlemmer. Medlemmer med roller kan omgå disse tjek. For offentlige rum anbefaler vi at aktivere verificering."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Luk konto"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Luk den direkte samtale med {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Skjul ulæste beskeder for {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "skjult"
@@ -8643,7 +8638,7 @@ msgstr "Fællesskaber og kanaler, hvor du ikke kan administrere webhooks, er skj
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Fællesskaber i Opdag skal scanne beskeder fra alle medlemmer. Denne indstilling kan ikke ændres, mens Opdag er aktiveret."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Fællesskaber i Opdag kræver mindst en bekræftet e-mailadresse. \"Ingen\" kan ikke vælges, mens Opdag er aktiveret."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Opret forbindelse med {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "forbundet"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Downloader opdatering til computerappen: {percent}% ({formatBytes} / {formatBytes2} med {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Downloader opdatering til computerappen…"
@@ -13294,7 +13289,7 @@ msgstr "Rediger vedhæftet fil"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Tom redigering"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Tomme favoritter"
@@ -14608,7 +14603,7 @@ msgstr "Udvid ulæste beskeder for {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "udvidet"
@@ -15849,7 +15844,7 @@ msgstr "Videresend medie"
msgid "Forward message"
msgstr "Videresend besked"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Videresendt"
@@ -18624,7 +18619,7 @@ msgstr "Maskering af invitationer"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Medlemmer fjernes, når de er offline, medmindre de får en rolle."
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Medlemmer med \"{pinMessagesPermissionLabel}\" kan fastgøre beskeder for alle."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Medlemmer med roller kan omgå disse tjek. Til offentlige rum anbefaler vi at aktivere bekræftelse."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Beskeder, der udgives i disse annonceringskanaler, kopieres til dine kan
msgid "Messages you can bookmark"
msgstr "Beskeder du kan bogmærke"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Beskeder er sat på pause"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Beskeder er sat på pause på din konto. Tjek din e-mail for et hurtigt trin, så du kan fortsætte."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Afsendelse af beskeder er midlertidigt sat på pause i dette fællesskab."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Beskeder er sat på pause"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Slå lyd fra for stream"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "sat på lydløs"
@@ -23984,7 +23990,7 @@ msgstr "Åbn kanaloplysninger for {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Åbn chat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "fastgjort"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "tryk for at tilføje reaktion"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "tryk for at fjerne reaktion"
@@ -29530,10 +29536,10 @@ msgstr "Tekst, der kan markeres"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "valgt"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Sendt"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Sendte en vedhæftet fil"
@@ -36228,11 +36234,11 @@ msgstr "Fastgørelse af gruppe-DM fjernet"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "ulæst"
@@ -38120,7 +38126,7 @@ msgstr "Taleopkald. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "talekanal"
@@ -39163,7 +39169,7 @@ msgstr "I går kl. {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Dig"
@@ -40067,16 +40073,6 @@ msgstr "Din konto"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Din konto er blevet forbundet. Du kan nu lukke denne fane og vende tilbage til appen."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Din konto er begrænset"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Din konto er begrænset. Tjek din e-mail for at se, hvordan du fjerner begrænsningen."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Du har endnu ikke fuldført oprettelsen af din konto. Uden en e-mail og adgangskode kan du ikke logge ind fra andre enheder, og du risikerer at miste adgangen til din konto. Fuldfør kontooprettelsen nu for at sikre den."
@@ -21,7 +21,7 @@ msgstr "... den Kompaktmodus aktivieren. Super!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# Bild} other {# Bilder}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# potenzielle Spammer-Nachricht} other {# potenzielle Spammer-Nachrichten}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# Reaktion} other {# Reaktionen}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> ist noch in der Gruppe. Versuche es in einem Moment er
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Weitergeleitet aus</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Accountdaten"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Der Account dient Spam, Betrug oder dem Missbrauch der Plattform."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Konto eingeschränkt"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategorien"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "Kategorie"
@@ -7200,7 +7195,7 @@ msgstr "Änderungen werden sofort im Live-Client angewendet."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "Kanal"
@@ -7768,9 +7763,9 @@ msgstr "Wähle aus, was {clientLabel} in deiner Community tun darf. Deaktiviere
msgid "Choose what friends see in their active now panel"
msgstr "Wähle aus, was Freunde in ihrem Bereich „Jetzt aktiv“ sehen"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Lege fest, welche Voraussetzungen Mitglieder erfüllen müssen, bevor sie Nachrichten posten oder Community-Mitgliedern DMs senden können."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Lege fest, was Mitglieder haben müssen, bevor sie in der Community posten oder Mitglieder per Direktnachricht kontaktieren können. Mitglieder mit Rollen können diese Prüfungen umgehen. Für öffentliche Bereiche empfehlen wir, die Verifizierung zu aktivieren."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Account löschen"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Direktnachricht mit {displayName} schließen"
@@ -8505,7 +8500,7 @@ msgstr "Ungelesene Nachrichten für {channelHeading} einklappen"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "eingeklappt"
@@ -8643,7 +8638,7 @@ msgstr "Communities und Kanäle, in denen du keine Webhooks verwalten kannst, we
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Unter „Entdecken“ aufgeführte Communitys müssen die Nachrichten aller Mitglieder prüfen. Diese Einstellung kann nicht geändert werden, solange „Entdecken“ aktiviert ist."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Unter „Entdecken“ aufgeführte Communitys erfordern mindestens eine verifizierte E-Mail-Adresse. „Keine“ kann nicht ausgewählt werden, solange „Entdecken“ aktiviert ist."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Mit {providerName} verbinden"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "verbunden"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Desktop-Update wird heruntergeladen: {percent}% ({formatBytes} / {formatBytes2} bei {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Desktop-Update wird heruntergeladen …"
@@ -13294,7 +13289,7 @@ msgstr "Anhang bearbeiten"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Leere Bearbeitung"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Favoriten leer"
@@ -14608,7 +14603,7 @@ msgstr "Ungelesene Nachrichten für {channelHeading} einblenden"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "erweitert"
@@ -15849,7 +15844,7 @@ msgstr "Medien weiterleiten"
msgid "Forward message"
msgstr "Nachricht weiterleiten"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Weitergeleitet"
@@ -18624,7 +18619,7 @@ msgstr "Einladungsmaskierung"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Mitglieder werden entfernt, wenn sie offline sind, es sei denn, sie habe
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Mit \"{pinMessagesPermissionLabel}\" können Mitglieder Nachrichten für alle anheften."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Mitglieder mit Rollen können diese Prüfungen umgehen. Für öffentliche Bereiche empfehlen wir, die Verifizierung zu aktivieren."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Nachrichten, die in diesen Ankündigungskanälen veröffentlicht werden,
msgid "Messages you can bookmark"
msgstr "Nachrichten, die du anpinnen kannst"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Das Senden von Nachrichten ist pausiert"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Das Senden von Nachrichten ist für deinen Account pausiert. Schau in deine E-Mails, dort erfährst du, wie es mit einem kurzen Schritt weitergeht."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Nachrichten sind in dieser Community vorübergehend pausiert."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Das Senden von Nachrichten ist pausiert"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Stream-Audio stummschalten"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "stummgeschaltet"
@@ -23984,7 +23990,7 @@ msgstr "Kanaldetails für {channelName} öffnen"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Chat öffnen"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "angepinnt"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "zum Hinzufügen einer Reaktion tippen"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "zum Entfernen der Reaktion tippen"
@@ -29530,10 +29536,10 @@ msgstr "Auswählbarer Text"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "ausgewählt"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Gesendet"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Hat einen Anhang gesendet"
@@ -36228,11 +36234,11 @@ msgstr "Anheftung der Gruppen-DM aufgehoben"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "ungelesen"
@@ -38120,7 +38126,7 @@ msgstr "Sprachanruf. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "Sprachkanal"
@@ -39163,7 +39169,7 @@ msgstr "Gestern um {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Du"
@@ -40067,16 +40073,6 @@ msgstr "Dein Account"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Dein Account wurde erfolgreich verknüpft. Du kannst diesen Tab jetzt schließen und zur App zurückkehren."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Dein Konto ist eingeschränkt"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Dein Konto ist eingeschränkt. Prüfe deine E-Mails, um zu erfahren, wie du es wieder freischalten kannst."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Dein Account ist noch nicht beansprucht. Ohne E-Mail-Adresse und Passwort kannst du dich nicht von anderen Geräten aus anmelden und könntest den Zugriff auf deinen Account verlieren. Beanspruche deinen Account jetzt, um ihn zu sichern."
@@ -21,7 +21,7 @@ msgstr "...ενεργοποιήσεις την πυκνή λειτουργία.
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# εικόνα} other {# εικόνες}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# πιθανό μήνυμα spam} other {# πιθανά μηνύματα spam}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# αντίδραση} other {# αντιδράσεις}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "Το άτομο <0>{username}</0> είναι ακόμα στην ομά
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Προωθήθηκε από</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Δεδομένα λογαριασμού"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Ο λογαριασμός υπάρχει για spam, απάτη ή κατάχρηση της πλατφόρμας."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Ο λογαριασμός έχει περιορισμούς"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Κατηγορίες"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "κατηγορία"
@@ -7200,7 +7195,7 @@ msgstr "Οι αλλαγές εφαρμόζονται άμεσα στο πρόγ
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "κανάλι"
@@ -7768,9 +7763,9 @@ msgstr "Επίλεξε τι μπορεί να κάνει το {clientLabel} στ
msgid "Choose what friends see in their active now panel"
msgstr "Επιλέξτε τι βλέπουν οι φίλοι στην ενότητα «Ενεργοί τώρα»"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Επιλέξτε τι πρέπει να έχουν τα μέλη πριν δημοσιεύσουν ή στείλουν DM σε μέλη της κοινότητας."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Επιλέξτε τι πρέπει να έχουν τα μέλη πριν μπορούν να δημοσιεύουν ή να στέλνουν απευθείας μηνύματα σε μέλη της κοινότητας. Τα μέλη με ρόλους μπορούν να παρακάμψουν αυτούς τους ελέγχους. Για δημόσιους χώρους, συνιστούμε την ενεργοποίηση της επαλήθευσης."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Κλείσιμο λογαριασμού"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Κλείσιμο απευθείας συνομιλίας με τον/την {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Σύμπτυξη μη αναγνωσμένων μηνυμάτων για
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "συμπτυγμένο"
@@ -8643,7 +8638,7 @@ msgstr "Οι κοινότητες και τα κανάλια όπου δεν μ
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Οι κοινότητες που εμφανίζονται στην Ανακάλυψη πρέπει να σαρώνουν τα μηνύματα από όλα τα μέλη. Αυτή η ρύθμιση δεν μπορεί να αλλάξει όσο είναι ενεργοποιημένη η Ανακάλυψη."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Οι κοινότητες που εμφανίζονται στην Ανακάλυψη απαιτούν τουλάχιστον επαληθευμένο email. Η επιλογή \"Καμία\" δεν είναι διαθέσιμη όσο η Ανακάλυψη είναι ενεργοποιημένη."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Σύνδεση με {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "συνδεδεμένο"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Λήψη ενημέρωσης για υπολογιστή: {percent}% ({formatBytes} / {formatBytes2} με {formatBytes3}/δευτ.)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Λήψη ενημέρωσης για υπολογιστή…"
@@ -13294,7 +13289,7 @@ msgstr "Επεξεργασία συνημμένου"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Κενή επεξεργασία"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Κενά αγαπημένα"
@@ -14608,7 +14603,7 @@ msgstr "Ανάπτυξη μη αναγνωσμένων μηνυμάτων για
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "αναπτυγμένο"
@@ -15849,7 +15844,7 @@ msgstr "Προώθηση πολυμέσων"
msgid "Forward message"
msgstr "Προώθηση μηνύματος"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Προωθημένο"
@@ -18624,7 +18619,7 @@ msgstr "Απόκρυψη προσκλήσεων"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Τα μέλη αφαιρούνται όταν είναι εκτός σύ
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Τα μέλη με το δικαίωμα \"{pinMessagesPermissionLabel}\" μπορούν να καρφιτσώνουν μηνύματα για όλους."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Τα μέλη με ρόλους μπορούν να παρακάμψουν αυτούς τους ελέγχους. Για δημόσιους χώρους, συνιστούμε την ενεργοποίηση της επαλήθευσης."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Τα μηνύματα που δημοσιεύονται σε αυτά τ
msgid "Messages you can bookmark"
msgstr "Μηνύματα που μπορείτε να αποθηκεύσετε"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Η αποστολή μηνυμάτων είναι σε παύση"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Η αποστολή μηνυμάτων από τον λογαριασμό σας είναι σε παύση. Ελέγξτε το email σας: ένα γρήγορο βήμα αρκεί για να συνεχίσετε."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Η αποστολή μηνυμάτων είναι σε παύση"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Σίγαση ήχου ροής"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "σε σίγαση"
@@ -23984,7 +23990,7 @@ msgstr "Άνοιγμα λεπτομερειών καναλιού για {channel
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Άνοιγμα συνομιλίας"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency}ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "καρφιτσωμένο"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "Πατήστε Συνέχεια για να χρησιμοποιήσετε το κλειδί πρόσβασής σας."
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "πατήστε για προσθήκη αντίδρασης"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "πατήστε για κατάργηση αντίδρασης"
@@ -29530,10 +29536,10 @@ msgstr "Επιλέξιμο κείμενο"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "επιλεγμένο"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Στάλθηκε"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Έστειλε ένα συνημμένο"
@@ -36228,11 +36234,11 @@ msgstr "Καταργήθηκε το καρφίτσωμα της ομαδικής
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "μη αναγνωσμένο"
@@ -38120,7 +38126,7 @@ msgstr "Φωνητική κλήση. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "φωνητικό κανάλι"
@@ -39163,7 +39169,7 @@ msgstr "Χθες στις {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Εσείς"
@@ -40067,16 +40073,6 @@ msgstr "Ο λογαριασμός σας"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Ο λογαριασμός σας έχει συνδεθεί επιτυχώς. Μπορείτε τώρα να κλείσετε αυτήν την καρτέλα και να επιστρέψετε στην εφαρμογή."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Ο λογαριασμός σας έχει περιορισμούς"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Ο λογαριασμός σας έχει περιορισμούς. Ελέγξτε το email σας για οδηγίες άρσης."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Ο λογαριασμός σας δεν έχει διεκδικηθεί ακόμα. Χωρίς email και κωδικό πρόσβασης, δεν θα μπορείτε να συνδεθείτε από άλλες συσκευές και μπορεί να χάσετε την πρόσβαση στον λογαριασμό σας. Διεκδικήστε τον λογαριασμό σας τώρα για να τον ασφαλίσετε."
@@ -21,7 +21,7 @@ msgstr "... turn dense mode on. Nice!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# image} other {# images}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# potential spammer message} other {# potential spammer messages}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reaction} other {# reactions}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> is still in the group. Try again in a moment."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Forwarded from</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Account data"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Account exists to spam, scam, or abuse the platform."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Account limited"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Categories"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "category"
@@ -7200,7 +7195,7 @@ msgstr "Changes apply instantly to the live client."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "channel"
@@ -7768,9 +7763,10 @@ msgstr "Choose what {clientLabel} can do in your community. Uncheck any permissi
msgid "Choose what friends see in their active now panel"
msgstr "Choose what friends see in their active now panel"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Choose what members must have before they can post or DM community members."
# auto-i18n: reviewed unchanged
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8292,7 @@ msgid "Close account"
msgstr "Close account"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Close direct message with {displayName}"
@@ -8505,7 +8501,7 @@ msgstr "Collapse unread messages for {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "collapsed"
@@ -8643,7 +8639,7 @@ msgstr "Communities and channels where you can't manage webhooks are hidden."
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
@@ -9149,7 +9145,7 @@ msgid "Connect with {providerName}"
msgstr "Connect with {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "connected"
@@ -12678,7 +12674,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13035,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Downloading desktop update…"
@@ -13294,7 +13290,7 @@ msgstr "Edit attachment"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13750,7 @@ msgid "Empty edit"
msgstr "Empty edit"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Empty favourites"
@@ -14608,7 +14604,7 @@ msgstr "Expand unread messages for {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "expanded"
@@ -15849,7 +15845,7 @@ msgstr "Forward media"
msgid "Forward message"
msgstr "Forward message"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Forwarded"
@@ -18624,7 +18620,7 @@ msgstr "Invite masking"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20845,6 @@ msgstr "Members are removed when offline unless given a role."
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21297,25 @@ msgstr "Messages published in these announcement channels are copied into your c
msgid "Messages you can bookmark"
msgstr "Messages you can bookmark"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Messaging is paused"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Messaging is paused on your account. Check your email for a quick step to continue."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Messaging is temporarily paused in this community."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Messaging paused"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22058,10 @@ msgstr "Mute stream audio"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "muted"
@@ -23984,7 +23991,7 @@ msgstr "Open channel details for {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Open chat"
@@ -25232,7 +25239,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency}ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "pinned"
@@ -25619,12 +25626,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "press to add reaction"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "press to remove reaction"
@@ -29530,10 +29537,10 @@ msgstr "Selectable text"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "selected"
@@ -29797,7 +29804,6 @@ msgstr "Sending malware or dangerous links"
msgid "Sending messages is disabled in this community"
msgstr "Sending messages is disabled in this community"
# auto-i18n: reviewed unchanged
#. Description for the stereo microphone switch in the voice settings.
#: src/features/voice/utils/noise_suppression/NoiseSuppressionLabels.ts:54
msgid "Sends both channels of a stereo microphone. Needs all processing off and a channel at 64 kbps or higher."
@@ -29842,7 +29848,7 @@ msgid "Sent"
msgstr "Sent"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Sent an attachment"
@@ -36229,11 +36235,11 @@ msgstr "Unpinned group DM"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "unread"
@@ -38121,7 +38127,7 @@ msgstr "Voice call. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "voice channel"
@@ -39164,7 +39170,7 @@ msgstr "Yesterday at {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "You"
@@ -40068,18 +40074,6 @@ msgstr "Your account"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Your account has been linked successfully. You can now close this tab and return to the app."
# auto-i18n: reviewed unchanged
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Your account is limited"
# auto-i18n: reviewed unchanged
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Your account is limited. Check your email for how to lift it."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
@@ -21,7 +21,7 @@ msgstr "... turn dense mode on. Nice!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# image} other {# images}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# potential spammer message} other {# potential spammer messages}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reaction} other {# reactions}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> is still in the group. Try again in a moment."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Forwarded from</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Account data"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Account exists to spam, scam, or abuse the platform."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Account limited"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Categories"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "category"
@@ -7200,7 +7195,7 @@ msgstr "Changes apply instantly to the live client."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "channel"
@@ -7768,9 +7763,9 @@ msgstr "Choose what {clientLabel} can do in your community. Uncheck any permissi
msgid "Choose what friends see in their active now panel"
msgstr "Choose what friends see in their active now panel"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Choose what members must have before they can post or DM community members."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Close account"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Close direct message with {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Collapse unread messages for {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "collapsed"
@@ -8643,7 +8638,7 @@ msgstr "Communities and channels where you can't manage webhooks are hidden."
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Connect with {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "connected"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Downloading desktop update…"
@@ -13294,7 +13289,7 @@ msgstr "Edit attachment"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Empty edit"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Empty favorites"
@@ -14608,7 +14603,7 @@ msgstr "Expand unread messages for {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "expanded"
@@ -15849,7 +15844,7 @@ msgstr "Forward media"
msgid "Forward message"
msgstr "Forward message"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Forwarded"
@@ -18624,7 +18619,7 @@ msgstr "Invite masking"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Members are removed when offline unless given a role."
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Messages published in these announcement channels are copied into your c
msgid "Messages you can bookmark"
msgstr "Messages you can bookmark"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Messaging is paused"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Messaging is paused on your account. Check your email for a quick step to continue."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Messaging is temporarily paused in this community."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Messaging paused"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Mute stream audio"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "muted"
@@ -23984,7 +23990,7 @@ msgstr "Open channel details for {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Open chat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency}ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "pinned"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "press to add reaction"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "press to remove reaction"
@@ -29530,10 +29536,10 @@ msgstr "Selectable text"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "selected"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Sent"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Sent an attachment"
@@ -36228,11 +36234,11 @@ msgstr "Unpinned group DM"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "unread"
@@ -38120,7 +38126,7 @@ msgstr "Voice call. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "voice channel"
@@ -39163,7 +39169,7 @@ msgstr "Yesterday at {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "You"
@@ -40067,16 +40073,6 @@ msgstr "Your account"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Your account has been linked successfully. You can now close this tab and return to the app."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Your account is limited"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Your account is limited. Check your email for how to lift it."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
@@ -21,7 +21,7 @@ msgstr "... actives el modo denso. ¡Genial!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# imagen} other {# imágenes}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# mensaje de un posible remitente de spam} other {# mensajes de posibles remitentes de spam}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reacción} other {# reacciones}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> sigue en el grupo. Intenta de nuevo en un momento."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Reenviado desde</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Datos de la cuenta"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "La cuenta existe para enviar spam, estafar o abusar de la plataforma."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Cuenta limitada"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Categorías"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "categoría"
@@ -7200,7 +7195,7 @@ msgstr "Los cambios se aplican al instante en el cliente en vivo."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "canal"
@@ -7768,9 +7763,9 @@ msgstr "Elige qué puede hacer {clientLabel} en tu comunidad. Desmarca los permi
msgid "Choose what friends see in their active now panel"
msgstr "Elige lo que tus amigos ven en su panel de \"Activo ahora\""
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Elige qué deben tener los miembros antes de que puedan publicar o enviar mensajes directos a los miembros de la comunidad."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Elige lo que los miembros deben tener antes de poder publicar o enviar mensajes directos a otros miembros de la comunidad. Los miembros con roles pueden omitir estas verificaciones. Para espacios públicos, recomendamos habilitar la verificación."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Cerrar cuenta"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Cerrar mensaje directo con {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Contraer mensajes no leídos de {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "contraído"
@@ -8643,7 +8638,7 @@ msgstr "Las comunidades y canales donde no puedes administrar webhooks están oc
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Las comunidades que aparecen en Descubrir deben analizar los mensajes de todos los miembros. Esta configuración no se puede cambiar mientras Descubrir esté activado."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Las comunidades que aparecen en Descubrir requieren al menos un correo electrónico verificado. No se puede seleccionar \"Ninguno\" mientras Descubrir esté activado."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Conectar con {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "conectado"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "MD"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "MD"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Descargando actualización de escritorio: {percent}% ({formatBytes} / {formatBytes2} a {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Descargando actualización de escritorio…"
@@ -13294,7 +13289,7 @@ msgstr "Editar archivo adjunto"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Edición sin texto"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Favoritos vacíos"
@@ -14608,7 +14603,7 @@ msgstr "Expandir mensajes no leídos de {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "expandido"
@@ -15849,7 +15844,7 @@ msgstr "Reenviar archivo multimedia"
msgid "Forward message"
msgstr "Reenviar mensaje"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Reenviado"
@@ -18624,7 +18619,7 @@ msgstr "Ocultar invitaciones"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Los miembros se eliminan cuando están desconectados, a menos que se les
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Los miembros con el permiso \"{pinMessagesPermissionLabel}\" pueden fijar mensajes para todos."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Los miembros con roles pueden omitir estas verificaciones. Para espacios públicos, recomendamos habilitar la verificación."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Los mensajes publicados en estos canales de anuncios se copian en tus ca
msgid "Messages you can bookmark"
msgstr "Mensajes que puedes marcar"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "El envío de mensajes está en pausa"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "El envío de mensajes está en pausa en tu cuenta. Revisa tu correo para completar un paso rápido y continuar."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "La mensajería está temporalmente en pausa en esta comunidad."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "El envío de mensajes está en pausa"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Silenciar audio de la transmisión"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "silenciado"
@@ -23984,7 +23990,7 @@ msgstr "Abrir detalles del canal {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Abrir chat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "fijado"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "toca para agregar una reacción"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "toca para eliminar la reacción"
@@ -29530,10 +29536,10 @@ msgstr "Texto seleccionable"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "seleccionado"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Enviado"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Envió un archivo adjunto"
@@ -36228,11 +36234,11 @@ msgstr "MD de grupo desfijado"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "no leído"
@@ -38120,7 +38126,7 @@ msgstr "Llamada de voz. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "canal de voz"
@@ -39163,7 +39169,7 @@ msgstr "Ayer a las {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Tú"
@@ -40067,16 +40073,6 @@ msgstr "Tu cuenta"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Tu cuenta se vinculó correctamente. Ahora puedes cerrar esta pestaña y volver a la aplicación."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Tu cuenta tiene limitaciones"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Tu cuenta está limitada. Revisa tu correo electrónico para saber cómo levantarla."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Aún no has completado el registro de tu cuenta. Sin un correo electrónico y una contraseña, no podrás iniciar sesión desde otros dispositivos y podrías perder el acceso. Completa el registro ahora para proteger tu cuenta."
@@ -21,7 +21,7 @@ msgstr "... actives el modo denso. ¡Genial!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# imagen} other {# imágenes}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# mensaje de un posible remitente de spam} other {# mensajes de posibles remitentes de spam}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reacción} other {# reacciones}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> sigue en el grupo. Inténtalo de nuevo en un momento."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Reenviado desde</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Datos de la cuenta"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "La cuenta existe para enviar spam, estafar o abusar de la plataforma."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Cuenta limitada"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Categorías"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "categoría"
@@ -7200,7 +7195,7 @@ msgstr "Los cambios se aplican al instante en el cliente."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "canal"
@@ -7768,9 +7763,9 @@ msgstr "Elige qué puede hacer {clientLabel} en tu comunidad. Desmarca los permi
msgid "Choose what friends see in their active now panel"
msgstr "Elige lo que ven tus amigos en su panel de actividad actual"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Elige qué deben tener los miembros antes de que puedan publicar o enviar mensajes directos a los miembros de la comunidad."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Elige qué deben tener los miembros antes de poder publicar o enviar mensajes directos a otros miembros de la comunidad. Los miembros con roles pueden omitir estas comprobaciones. Para espacios públicos, recomendamos activar la verificación."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Cerrar cuenta"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Cerrar mensaje directo con {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Contraer los mensajes no leídos de {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "contraído"
@@ -8643,7 +8638,7 @@ msgstr "Las comunidades y canales donde no puedes administrar webhooks están oc
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Las comunidades que aparecen en Descubrir deben analizar los mensajes de todos los miembros. Este ajuste no se puede cambiar mientras Descubrir esté activado."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Las comunidades que aparecen en Descubrir requieren al menos un correo electrónico verificado. No se puede seleccionar Ninguno mientras Descubrir esté activado."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Conectar con {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "conectado"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "MD"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "MD"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Descargando actualización de escritorio: {percent}% ({formatBytes} / {formatBytes2} a {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Descargando actualización de escritorio…"
@@ -13294,7 +13289,7 @@ msgstr "Editar archivo adjunto"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Edición sin texto"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Favoritos vacíos"
@@ -14608,7 +14603,7 @@ msgstr "Expandir mensajes no leídos de {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "expandido"
@@ -15849,7 +15844,7 @@ msgstr "Reenviar contenido multimedia"
msgid "Forward message"
msgstr "Reenviar mensaje"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Reenviado"
@@ -18624,7 +18619,7 @@ msgstr "Ocultar invitaciones"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Los miembros se eliminan al desconectarse a menos que se les asigne un r
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Los miembros con el permiso \"{pinMessagesPermissionLabel}\" pueden fijar mensajes para todos."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Los miembros con roles pueden omitir estas comprobaciones. Para espacios públicos, recomendamos activar la verificación."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Los mensajes publicados en estos canales de anuncios se copian en tus ca
msgid "Messages you can bookmark"
msgstr "Mensajes que puedes marcar"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "El envío de mensajes está en pausa"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "El envío de mensajes está en pausa en tu cuenta. Revisa tu correo electrónico para completar un paso rápido y continuar."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "La mensajería está temporalmente en pausa en esta comunidad."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "El envío de mensajes está en pausa"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Silenciar audio de la transmisión"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "silenciado"
@@ -23984,7 +23990,7 @@ msgstr "Abrir detalles del canal {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Abrir chat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "fijado"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "pulsa para añadir una reacción"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "pulsa para eliminar la reacción"
@@ -29530,10 +29536,10 @@ msgstr "Texto seleccionable"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "seleccionado"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Enviado"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Adjunto enviado"
@@ -36228,11 +36234,11 @@ msgstr "MD de grupo desfijado"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "no leído"
@@ -38120,7 +38126,7 @@ msgstr "Llamada de voz. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "canal de voz"
@@ -39163,7 +39169,7 @@ msgstr "Ayer a las {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Tú"
@@ -40067,16 +40073,6 @@ msgstr "Tu cuenta"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Tu cuenta se ha vinculado correctamente. Ya puedes cerrar esta pestaña y volver a la aplicación."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Tu cuenta tiene limitaciones"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Tu cuenta está limitada. Revisa tu correo electrónico para saber cómo levantarla."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Aún no has completado el registro de tu cuenta. Sin un correo electrónico y una contraseña, no podrás iniciar sesión desde otros dispositivos y podrías perder el acceso. Completa el registro ahora para proteger tu cuenta."
@@ -21,7 +21,7 @@ msgstr "...otat tiiviin tilan käyttöön. Hienoa!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# kuva} other {# kuvaa}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# mahdollinen roskapostiviesti} other {# mahdollista roskapostiviestiä}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reaktio} other {# reaktiota}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> on edelleen ryhmässä. Yritä uudelleen hetken kulutt
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Välitetty kohteesta</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Tilitiedot"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Tili on olemassa roskapostitusta, huijausta tai alustan väärinkäyttöä varten."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Tili rajoitettu"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategoriat"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategoria"
@@ -7200,7 +7195,7 @@ msgstr "Muutokset tulevat voimaan välittömästi live-asiakasohjelmassa."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kanava"
@@ -7768,9 +7763,9 @@ msgstr "Valitse, mitä {clientLabel} voi tehdä yhteisössäsi. Poista valinta k
msgid "Choose what friends see in their active now panel"
msgstr "Valitse, mitä kaverit näkevät Aktiiviset nyt -paneelissaan"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Valitse, mitä jäsenillä on oltava, ennen kuin he voivat julkaista tai lähettää yksityisviestejä yhteisön jäsenille."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Valitse, mitä jäsenillä on oltava ennen kuin he voivat lähettää viestejä tai lähettää yksityisviestejä yhteisön jäsenille. Roolien jäsenet voivat ohittaa nämä tarkistukset. Julkisia tiloja varten suosittelemme vahvistuksen käyttöönottoa."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Sulje tili"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Sulje yksityisviesti käyttäjän {displayName} kanssa"
@@ -8505,7 +8500,7 @@ msgstr "Tiivistä kohteen {channelHeading} lukemattomat viestit"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "tiivistetty"
@@ -8643,7 +8638,7 @@ msgstr "Yhteisöt ja kanavat, joissa et voi hallita webhookeja, on piilotettu."
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Löydä-osiossa listattujen yhteisöjen on tarkistettava kaikkien jäsenten viestit. Tätä asetusta ei voi muuttaa, kun Löydä-osio on käytössä."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Löydä-osiossa listatut yhteisöt edellyttävät vähintään sähköpostin vahvistamista. Vaihtoehtoa \"Ei mitään\" ei voi valita, kun Löydä-osio on käytössä."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Yhdistä palveluun {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "yhdistetty"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "YV"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Ladataan työpöytäsovelluksen päivitystä: {percent} % ({formatBytes} / {formatBytes2} nopeudella {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Ladataan työpöytäsovelluksen päivitystä…"
@@ -13294,7 +13289,7 @@ msgstr "Muokkaa liitettä"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Tyhjä muokkaus"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Ei suosikkeja"
@@ -14608,7 +14603,7 @@ msgstr "Laajenna kanavan {channelHeading} lukemattomat viestit"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "laajennettu"
@@ -15849,7 +15844,7 @@ msgstr "Välitä media"
msgid "Forward message"
msgstr "Välitä viesti"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Välitetty"
@@ -18624,7 +18619,7 @@ msgstr "Kutsujen piilottaminen"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Jäsenet poistetaan, kun he ovat offline-tilassa, ellei heille ole annet
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Jäsenet, joilla on oikeus \"{pinMessagesPermissionLabel}\", voivat kiinnittää viestejä kaikkien nähtäville."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Jäsenet, joilla on rooli, voivat ohittaa nämä tarkistukset. Julkisissa tiloissa suosittelemme ottamaan vahvistuksen käyttöön."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Viestit, jotka julkaistaan näissä ilmoituskanavissa, kopioidaan kanavi
msgid "Messages you can bookmark"
msgstr "Viestit, jotka voit kirjanmerkätä"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Viestien lähettäminen on tauolla"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Viestien lähettäminen on tililläsi tauolla. Löydät sähköpostistasi yhden nopean vaiheen, jolla pääset jatkamaan."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Viestintä on tilapäisesti keskeytetty tässä yhteisössä."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Viestien lähettäminen on tauolla"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Mykistä striimin ääni"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "mykistetty"
@@ -23984,7 +23990,7 @@ msgstr "Avaa kanavan {channelName} tiedot"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Avaa chat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "kiinnitetty"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "lisää reaktio painamalla"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "poista reaktio painamalla"
@@ -29530,10 +29536,10 @@ msgstr "Valittava teksti"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "valittu"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Lähetetty"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Liite lähetetty"
@@ -36228,11 +36234,11 @@ msgstr "Ryhmäkeskustelun kiinnitys poistettu"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "lukematon"
@@ -38120,7 +38126,7 @@ msgstr "Äänipuhelu. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "äänikanava"
@@ -39163,7 +39169,7 @@ msgstr "Eilen klo {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Sinä"
@@ -40067,16 +40073,6 @@ msgstr "Tilisi"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Tilisi on nyt yhdistetty. Voit sulkea tämän välilehden ja palata sovellukseen."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Tilisi on rajoitettu"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Tilisi on rajoitettu. Tarkista sähköpostistasi ohjeet rajoitusten poistamiseksi."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Tilisi rekisteröintiä ei ole vielä viimeistelty. Ilman sähköpostiosoitetta ja salasanaa et voi kirjautua sisään muilta laitteilta ja saatat menettää pääsyn tiliisi. Viimeistele tilisi rekisteröinti nyt, niin tilisi on turvassa."
@@ -21,7 +21,7 @@ msgstr "... activer le mode dense. Chouette !"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# image} other {# images}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# message d’une personne susceptible d’envoyer du spam} other {# messages de personnes susceptibles d’envoyer du spam}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# réaction} other {# réactions}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName} : {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName} : {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> est toujours dans le groupe. Réessayez dans un instan
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Transféré depuis</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Données du compte"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Ce compte existe pour envoyer du spam, escroquer ou abuser de la plateforme."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Compte limité"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Catégories"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "catégorie"
@@ -7200,7 +7195,7 @@ msgstr "Les modifications s’appliquent immédiatement au client en cours d’e
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "salon"
@@ -7768,9 +7763,9 @@ msgstr "Choisissez ce que {clientLabel} peut faire dans votre communauté. Déco
msgid "Choose what friends see in their active now panel"
msgstr "Choisissez ce que vos amis voient dans leur panneau « Actif en ce moment »"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Choisissez les conditions à remplir pour publier ou envoyer des messages privés aux membres de la communauté."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Choisissez ce que les membres doivent avoir avant de pouvoir publier ou envoyer des messages directs aux membres de la communauté. Les membres ayant des rôles peuvent contourner ces vérifications. Pour les espaces publics, nous recommandons d'activer la vérification."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Fermer le compte"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Fermer la conversation privée avec {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Réduire les messages non lus pour {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "réduit"
@@ -8643,7 +8638,7 @@ msgstr "Les communautés et chaînes où vous ne pouvez pas gérer les webhooks
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Les communautés présentes dans Découverte doivent analyser les messages de tous les membres. Ce paramètre ne peut pas être modifié tant que Découverte est activée."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Les communautés présentes dans Découverte doivent exiger au minimum la vérification de l’adresse e-mail. L’option « Aucun » ne peut pas être sélectionnée tant que Découverte est activée."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Se connecter avec {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "connecté"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "MP"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "MP"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Téléchargement de la mise à jour de l’application de bureau : {percent} % ({formatBytes} / {formatBytes2} à {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Téléchargement de la mise à jour…"
@@ -13294,7 +13289,7 @@ msgstr "Modifier la pièce jointe"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Modification vide"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Favoris vides"
@@ -14608,7 +14603,7 @@ msgstr "Afficher les messages non lus de {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "développé"
@@ -15849,7 +15844,7 @@ msgstr "Transférer le média"
msgid "Forward message"
msgstr "Transférer le message"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Transféré"
@@ -18624,7 +18619,7 @@ msgstr "Masquage des invitations"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Les membres sont retirés de la communauté lorsqu’ils passent hors li
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Les membres disposant de la permission « {pinMessagesPermissionLabel} » peuvent épingler des messages pour tout le monde."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Les membres avec des rôles peuvent contourner ces vérifications. Pour les espaces publics, nous recommandons d'activer la vérification."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Les messages publiés dans ces canaux d'annonce sont copiés dans vos ca
msgid "Messages you can bookmark"
msgstr "Messages que vous pouvez mettre en favori"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "L'envoi de messages est en pause"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "L'envoi de messages est en pause sur votre compte. Consultez vos e-mails pour découvrir l'étape rapide qui vous permettra de continuer."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "La messagerie est temporairement suspendue dans cette communauté."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "L'envoi de messages est en pause"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Couper le son de la diffusion"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "en sourdine"
@@ -23984,7 +23990,7 @@ msgstr "Ouvrir les détails du salon {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Ouvrir le chat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping : {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "épinglé"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "appuyer pour ajouter une réaction"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "appuyer pour supprimer la réaction"
@@ -29530,10 +29536,10 @@ msgstr "Texte sélectionnable"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "Sélectionné"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Envoyé"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "A envoyé une pièce jointe"
@@ -36228,11 +36234,11 @@ msgstr "MP de groupe désépinglé"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "non lu"
@@ -38120,7 +38126,7 @@ msgstr "Appel vocal. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "salon vocal"
@@ -39163,7 +39169,7 @@ msgstr "Hier à {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Vous"
@@ -40067,16 +40073,6 @@ msgstr "Votre compte"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Votre compte a été lié avec succès. Vous pouvez maintenant fermer cet onglet et retourner à l'application."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Votre compte est limité"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Votre compte est limité. Consultez votre e-mail pour savoir comment le rétablir."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Votre inscription n’est pas encore finalisée. Sans adresse e-mail ni mot de passe, vous ne pourrez pas vous connecter depuis d’autres appareils et vous risquez de perdre l’accès à votre compte. Finalisez votre inscription maintenant pour le sécuriser."
@@ -21,7 +21,7 @@ msgstr "... להפעיל מצב צפוף. יפה!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# תמונה} other {# תמונות}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# הודעת ספאם אפשרית} other {# הודעות ספאם אפשריות}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# ריאקציה} other {# ריאקציות}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> עדיין בקבוצה. נסה שוב בעוד רגע
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>הועבר מתוך</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "נתוני חשבון"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "החשבון מוגבל"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "קטגוריות"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "קטגוריה"
@@ -7200,7 +7195,7 @@ msgstr "השינויים יחולו באופן מיידי על הלקוח הפע
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "ערוץ"
@@ -7768,9 +7763,9 @@ msgstr "בחר מה {clientLabel} יכול לעשות בקהילה שלך. בט
msgid "Choose what friends see in their active now panel"
msgstr "בחר מה חברים רואים בחלונית \"פעילים כעת\" שלהם"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "בחר מה נדרש מחברים לפני שיוכלו לשלוח הודעות בערוצים או הודעות פרטיות לחברי הקהילה."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "בחר מה חברי הקהילה חייבים לעמוד בו לפני שהם יכולים לפרסם או לשלוח הודעות פרטיות לחברי קהילה אחרים. חברים עם תפקידים יכולים לעקוף את הבדיקות הללו. עבור חללים ציבוריים, אנו ממליצים להפעיל אימות."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "סגירת חשבון"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "סגור את הצ'אט עם {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "כיווץ ההודעות שלא נקראו עבור {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "מכווץ"
@@ -8643,7 +8638,7 @@ msgstr "קהילות וערוצים שבהם אינך יכול לנהל Webhooks
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "קהילות המופיעות בגילוי נדרשות לסרוק הודעות מכל החברים. לא ניתן לשנות הגדרה זו כל עוד הגילוי מופעל."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "קהילות המופיעות בגילוי דורשות אימייל מאומת לפחות. לא ניתן לבחור באפשרות \"ללא\" כשהגילוי מופעל."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "התחברות באמצעות {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "מחובר"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "מוריד עדכון למחשב: {percent}% ({formatBytes} / {formatBytes2} בקצב של {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "מוריד עדכון למחשב…"
@@ -13294,7 +13289,7 @@ msgstr "עריכת קובץ מצורף"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "עריכה ריקה"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "אין מועדפים"
@@ -14608,7 +14603,7 @@ msgstr "הרחבת הודעות שלא נקראו עבור {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "מורחב"
@@ -15849,7 +15844,7 @@ msgstr "העבר מדיה"
msgid "Forward message"
msgstr "העברת הודעה"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "הועבר"
@@ -18624,7 +18619,7 @@ msgstr "הסתרת הזמנות"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "חברים יוסרו כשהם לא מקוונים, אלא אם כן י
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "חברים עם הרשאת \"{pinMessagesPermissionLabel}\" יכולים להצמיד הודעות עבור כולם."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "חברים עם תפקידים יכולים לעקוף את הבדיקות האלה. עבור מרחבים ציבוריים, אנו ממליצים להפעיל אימות."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "הודעות שפורסמו בערוצי ההכרזה האלה מועת
msgid "Messages you can bookmark"
msgstr "הודעות שניתן לשמור בסימניות"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "שליחת ההודעות מושהית"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "שליחת ההודעות בחשבון שלך מושהית כרגע. באימייל שלך מחכה לך שלב קצר אחד כדי להמשיך."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "שליחת ההודעות מושהית"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "השתקת שמע השידור"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "מושתק"
@@ -23984,7 +23990,7 @@ msgstr "פתח פרטי ערוץ עבור {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "פתח צ'אט"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "פינג: {latency}ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "מוצמד"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "לחץ על המשך כדי להשתמש במפתח הגישה שלך."
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "לחץ כדי להוסיף ריאקציה"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "לחץ כדי להסיר ריאקציה"
@@ -29530,10 +29536,10 @@ msgstr "טקסט שניתן לבחירה"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "נבחר"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "נשלח"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "שלח/ה קובץ מצורף"
@@ -36228,11 +36234,11 @@ msgstr "צ'אט קבוצתי לא מוצמד"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "שלא נקראו"
@@ -38120,7 +38126,7 @@ msgstr "שיחה קולית. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "ערוץ קולי"
@@ -39163,7 +39169,7 @@ msgstr "אתמול ב-{timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "אתה"
@@ -40067,16 +40073,6 @@ msgstr "החשבון שלך"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "החשבון שלך קושר בהצלחה. עכשיו אפשר לסגור את הלשונית הזו ולחזור לאפליקציה."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "החשבון שלך מוגבל"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "החשבון שלך מוגבל. בדוק את המייל שלך כדי לדעת כיצד להסיר את ההגבלה."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "החשבון שלך עדיין לא נתבע. ללא אימייל וסיסמה, לא תוכל להיכנס ממכשירים אחרים וייתכן שתאבד גישה לחשבונך. תבע את החשבון שלך עכשיו כדי לאבטח אותו."
@@ -21,7 +21,7 @@ msgstr "... सघन मोड चालू करें। बढ़िया!
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# इमेज} other {# इमेज}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# संभावित स्पैमर का मैसेज} other {# संभावित स्पैमर के मैसेज}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# रिएक्शन} other {# रिएक्शन}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> अभी भी ग्रुप में है।
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "{sourceInfo}<0>से फ़ॉरवर्ड किया गया</0>"
@@ -2787,11 +2787,6 @@ msgstr "अकाउंट डेटा"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "खाता सीमित"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "श्रेणियाँ"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "श्रेणी"
@@ -7200,7 +7195,7 @@ msgstr "बदलाव तुरंत लाइव क्लाइंट प
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "चैनल"
@@ -7768,9 +7763,9 @@ msgstr "चुनें कि {clientLabel} आपकी कम्युनि
msgid "Choose what friends see in their active now panel"
msgstr "चुनें कि दोस्त अपने अभी सक्रिय पैनल में क्या देखें"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "चुनें कि सदस्यों को पोस्ट करने या कम्युनिटी के सदस्यों को DM करने से पहले क्या करना होगा।"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "सदस्य पोस्ट करने या समुदाय के सदस्यों को सीधे संदेश भेजने से पहले उनके पास क्या होना चाहिए, उसे चुनें। भूमिकाओं वाले सदस्य इन जांचों को बायपास कर सकते हैं। सार्वजनिक स्थानों के लिए, हम सत्यापन सक्षम करने की सलाह देते हैं।"
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "अकाउंट बंद करें"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "{displayName} के साथ डायरेक्ट मैसेज बंद करें"
@@ -8505,7 +8500,7 @@ msgstr "{channelHeading} के लिए न पढ़े गए मैसे
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "छोटा किया गया"
@@ -8643,7 +8638,7 @@ msgstr "जिन समुदायों और चैनलों में
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "डिस्कवरी में लिस्ट की गई कम्युनिटी के लिए सभी सदस्यों के मैसेज स्कैन करना ज़रूरी है। डिस्कवरी चालू होने पर यह सेटिंग बदली नहीं जा सकती।"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "डिस्कवरी में लिस्ट की गई कम्युनिटी के लिए कम से कम ईमेल वेरिफ़िकेशन ज़रूरी है। डिस्कवरी चालू रहने तक \"कोई नहीं\" नहीं चुना जा सकता।"
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "{providerName} से कनेक्ट करें"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "कनेक्ट किया गया"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "डेस्कटॉप अपडेट डाउनलोड हो रहा है: {percent}% ({formatBytes} / {formatBytes2} {formatBytes3}/सेकंड पर)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "डेस्कटॉप अपडेट डाउनलोड हो रहा है…"
@@ -13294,7 +13289,7 @@ msgstr "अटैचमेंट एडिट करें"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "खाली एडिट"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "पसंदीदा खाली हैं"
@@ -14608,7 +14603,7 @@ msgstr "{channelHeading} के लिए न पढ़े गए मैसे
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "विस्तारित"
@@ -15849,7 +15844,7 @@ msgstr "मीडिया फ़ॉरवर्ड करें"
msgid "Forward message"
msgstr "मैसेज फ़ॉरवर्ड करें"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "फ़ॉरवर्ड किया गया"
@@ -18624,7 +18619,7 @@ msgstr "इनवाइट मास्किंग"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "सदस्यों को ऑफ़लाइन होने पर
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "जिन सदस्यों के पास \"{pinMessagesPermissionLabel}\" है, वे सभी के लिए मैसेज पिन कर सकते हैं।"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "रोल वाले सदस्य इन जाँचों को बायपास कर सकते हैं। सार्वजनिक जगहों के लिए, हम वेरिफ़िकेशन चालू करने की सलाह देते हैं।"
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "इन घोषणा चैनलों में प्रकाश
msgid "Messages you can bookmark"
msgstr "बुकमार्क करने लायक संदेश"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "मैसेजिंग अभी रुकी हुई है"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "आपके अकाउंट पर मैसेजिंग अभी रुकी हुई है। आगे बढ़ने के लिए अपना ईमेल देखें, बस एक आसान स्टेप पूरा करना है।"
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "मैसेजिंग अभी रुकी हुई है"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "स्ट्रीम ऑडियो म्यूट करें"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "म्यूट किया गया"
@@ -23984,7 +23990,7 @@ msgstr "{channelName} के चैनल विवरण खोलें"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "चैट खोलें"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "पिंग: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "पिन किया गया"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "अपनी पासकी का उपयोग करने के लिए 'जारी रखें' दबाएँ।"
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "रिएक्शन जोड़ने के लिए दबाएँ"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "रिएक्शन हटाने के लिए दबाएँ"
@@ -29530,10 +29536,10 @@ msgstr "सिलेक्टेबल टेक्स्ट"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "चुना गया"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "भेजा गया"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "अटैचमेंट भेजा"
@@ -36228,11 +36234,11 @@ msgstr "ग्रुप DM अनपिन किया गया"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "अपठित"
@@ -38120,7 +38126,7 @@ msgstr "वॉइस कॉल। {statusText}।"
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "वॉइस चैनल"
@@ -39163,7 +39169,7 @@ msgstr "कल {timeString} बजे"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "आप"
@@ -40067,16 +40073,6 @@ msgstr "आपका अकाउंट"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "आपका अकाउंट सफलतापूर्वक लिंक हो गया है। अब आप इस टैब को बंद करके ऐप पर वापस जा सकते हैं।"
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "आपका खाता सीमित है"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "आपका खाता सीमित है। इसे हटाने के तरीके के बारे में जानने के लिए अपना ईमेल देखें।"
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "आपका अकाउंट अभी तक क्लेम नहीं किया गया है। ईमेल और पासवर्ड के बिना, आप दूसरे डिवाइस से साइन इन नहीं कर पाएँगे और अपने अकाउंट का एक्सेस खो सकते हैं। इसे सुरक्षित करने के लिए अभी अपना अकाउंट क्लेम करें।"
@@ -21,7 +21,7 @@ msgstr "... uključite zbijeni način rada. Super!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# slika} few {# slike} other {# slika}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# moguća neželjena poruka} few {# moguće neželjene poruke} other {# mogućih neželjenih poruka}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reakcija} few {# reakcije} other {# reakcija}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> je i dalje u grupi. Pokušajte ponovno za trenutak."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Proslijeđeno iz</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Podaci o računu"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Račun postoji radi slanja neželjene pošte, prijevara ili zlouporabe platforme."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Račun ograničen"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategorije"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategorija"
@@ -7200,7 +7195,7 @@ msgstr "Promjene se odmah primjenjuju na aktivni klijent."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kanal"
@@ -7768,9 +7763,9 @@ msgstr "Odaberite što {clientLabel} može raditi u vašoj zajednici. Odznačite
msgid "Choose what friends see in their active now panel"
msgstr "Odaberite što prijatelji vide na ploči \"Aktivno sada\""
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Odaberite što članovi moraju imati prije nego što mogu objavljivati ili slati izravne poruke članovima zajednice."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Odaberite što članovi moraju imati prije nego što mogu objavljivati ili slati privatne poruke članovima zajednice. Članovi s ulogama mogu zaobići ove provjere. Za javne prostore preporučujemo omogućavanje provjere."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Zatvori račun"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Zatvori izravnu poruku s {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Sažmi nepročitane poruke za {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "sažeto"
@@ -8643,7 +8638,7 @@ msgstr "Zajednice i kanali kojima ne možete upravljati webhookovima skriveni su
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Zajednice navedene u Otkrivanju moraju skenirati poruke svih članova. Ova se postavka ne može promijeniti dok je Otkrivanje omogućeno."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Zajednice navedene u Otkrivanju zahtijevaju barem potvrđenu e-poštu. Opcija \"Ništa\" ne može se odabrati dok je Otkrivanje omogućeno."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Poveži se s {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "povezano"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Preuzimanje ažuriranja za stolno računalo: {percent}% ({formatBytes} / {formatBytes2} pri {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Preuzimanje ažuriranja za stolno računalo…"
@@ -13294,7 +13289,7 @@ msgstr "Uredi privitak"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Prazna izmjena"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Prazni favoriti"
@@ -14608,7 +14603,7 @@ msgstr "Proširi nepročitane poruke za {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "prošireno"
@@ -15849,7 +15844,7 @@ msgstr "Proslijedi medij"
msgid "Forward message"
msgstr "Proslijedi poruku"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Proslijeđeno"
@@ -18624,7 +18619,7 @@ msgstr "Maskiranje pozivnica"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Članovi se uklanjaju kada su izvan mreže, osim ako im nije dodijeljena
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Članovi s dopuštenjem \"{pinMessagesPermissionLabel}\" mogu prikvačiti poruke za sve."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Članovi s ulogama mogu zaobići ove provjere. Za javne prostore preporučujemo omogućavanje provjere."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Poruke objavljene u ovim kanalima za objave kopiraju se u vaše kanale."
msgid "Messages you can bookmark"
msgstr "Poruke koje možeš označiti"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Slanje poruka je pauzirano"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Slanje poruka na vašem računu je pauzirano. Pogledajte e-poštu: dovoljan je jedan brzi korak za nastavak."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Slanje poruka privremeno je pauzirano u ovoj zajednici."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Slanje poruka je pauzirano"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Isključi zvuk prijenosa"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "utišano"
@@ -23984,7 +23990,7 @@ msgstr "Otvori pojedinosti kanala {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Otvori čavrljanje"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "prikvačeno"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "pritisnite za dodavanje reakcije"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "pritisnite za uklanjanje reakcije"
@@ -29530,10 +29536,10 @@ msgstr "Tekst koji se može odabrati"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "odabrano"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Poslano"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Poslao/la privitak"
@@ -36228,11 +36234,11 @@ msgstr "Grupna izravna poruka je otkvačena"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "nepročitano"
@@ -38120,7 +38126,7 @@ msgstr "Glasovni poziv. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "glasovni kanal"
@@ -39163,7 +39169,7 @@ msgstr "Jučer u {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Vi"
@@ -40067,16 +40073,6 @@ msgstr "Vaš račun"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Vaš je račun uspješno povezan. Sada možete zatvoriti ovu karticu i vratiti se u aplikaciju."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Vaš je račun ograničen"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Vaš je račun ograničen. Provjerite svoju e-poštu za upute kako ga deblokirati."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Vaš račun još nije preuzet. Bez e-pošte i lozinke nećete se moći prijaviti s drugih uređaja i mogli biste izgubiti pristup svom računu. Preuzmite svoj račun sada kako biste ga osigurali."
@@ -21,7 +21,7 @@ msgstr "... bekapcsold a sűrű módot. Szuper!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# kép} other {# kép}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# potenciális spammertől érkező üzenet} other {# potenciális spammertől érkező üzenet}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reakció} other {# reakció}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> még mindig a csoportban van. Próbáld újra egy pill
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Továbbítva innen</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Fiókadatok"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "A fiók spamküldésre, átverésre vagy a platformmal való visszaélésre jött létre."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Fiók korlátozva"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategóriák"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategória"
@@ -7200,7 +7195,7 @@ msgstr "A módosítások azonnal érvénybe lépnek az élő kliensen."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "csatorna"
@@ -7768,9 +7763,9 @@ msgstr "Válaszd ki, mit tehet a(z) {clientLabel} a közösségedben. Töröld a
msgid "Choose what friends see in their active now panel"
msgstr "Válaszd ki, mit lássanak az ismerőseid a „Most aktívak” panelen"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Válaszd ki, hogy a tagoknak mivel kell rendelkezniük, mielőtt bejegyzéseket tehetnek közzé vagy közvetlen üzenetet küldhetnek a közösség tagjainak."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Válaszd ki, hogy a tagoknak mi legyen meg, mielőtt bejegyzést írhatnak vagy privát üzenetet küldhetnek a közösség tagjainak. A szerepkörrel rendelkező tagok átugorhatják ezeket az ellenőrzéseket. Nyilvános helyek esetén javasoljuk az ellenőrzés engedélyezését."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Fiók bezárása"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "A(z) {displayName} felhasználóval folytatott közvetlen beszélgetés bezárása"
@@ -8505,7 +8500,7 @@ msgstr "{channelHeading} olvasatlan üzeneteinek összecsukása"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "összecsukva"
@@ -8643,7 +8638,7 @@ msgstr "A közösségek és csatornák, ahol nem tudsz webhookokat kezelni, el v
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "A Felfedezésben szereplő közösségekben minden tag üzeneteit ellenőrizni kell. Ez a beállítás nem módosítható, amíg a Felfedezés engedélyezve van."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "A Felfedezésben szereplő közösségekben legalább az e-mail-cím megerősítését meg kell követelni. A „Nincs” lehetőség nem választható, amíg a Felfedezés engedélyezve van."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Kapcsolódás a(z) {providerName} szolgáltatással"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "csatlakoztatva"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Asztali frissítés letöltése: {percent}% ({formatBytes} / {formatBytes2}, {formatBytes3}/mp)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Asztali frissítés letöltése…"
@@ -13294,7 +13289,7 @@ msgstr "Melléklet szerkesztése"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Üres szerkesztés"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Üres kedvencek"
@@ -14608,7 +14603,7 @@ msgstr "Olvasatlan üzenetek kibontása – {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "kibontva"
@@ -15849,7 +15844,7 @@ msgstr "Média továbbítása"
msgid "Forward message"
msgstr "Üzenet továbbítása"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Továbbítva"
@@ -18624,7 +18619,7 @@ msgstr "Meghívó elrejtése"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "A tagok eltávolításra kerülnek, ha offline állapotban vannak, kivé
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Azok a tagok, akik rendelkeznek a(z) „{pinMessagesPermissionLabel}” jogosultsággal, üzeneteket rögzíthetnek mindenki számára."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "A szerepkörrel rendelkező tagok megkerülhetik ezeket az ellenőrzéseket. Nyilvános terek esetén javasoljuk az ellenőrzés engedélyezését."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Az üzenetek, amelyeket ezekben a bejelentési csatornákban tesznek kö
msgid "Messages you can bookmark"
msgstr "Üzenetek, amelyeket megjelölhetsz"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Az üzenetküldés szünetel"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Az üzenetküldés jelenleg szünetel a fiókodban. Nézd meg az e-mailjeidet: egy gyors lépés, és folytathatod."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Az üzenetküldés átmenetileg szünetel ebben a közösségben."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Az üzenetküldés szünetel"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Stream hangjának némítása"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "némítva"
@@ -23984,7 +23990,7 @@ msgstr "Csatornarészletek megnyitása – {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Csevegés megnyitása"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "rögzítve"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "nyomd meg a reakció hozzáadásához"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "nyomd meg a reakció eltávolításához"
@@ -29530,10 +29536,10 @@ msgstr "Kijelölhető szöveg"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "kiválasztva"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Elküldve"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Mellékletet küldött"
@@ -36228,11 +36234,11 @@ msgstr "Rögzítés feloldva (csoportos beszélgetés)"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "olvasatlan"
@@ -38120,7 +38126,7 @@ msgstr "Hanghívás. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "hangcsatorna"
@@ -39163,7 +39169,7 @@ msgstr "Tegnap, {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Te"
@@ -40067,16 +40073,6 @@ msgstr "A fiókod"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Fiókod sikeresen összekapcsolva. Most már bezárhatod ezt az oldalt, és visszatérhetsz az alkalmazásba."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "A fiókod korlátozott"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Fiókod korlátozott. A korlátozás feloldásához ellenőrizd az e-mailjeidet."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "A fiókod regisztrációja még nincs befejezve. E-mail-cím és jelszó nélkül nem tudsz más eszközökről bejelentkezni, és elveszítheted a hozzáférést a fiókodhoz. Fejezd be most a regisztrációt, hogy biztonságban legyen a fiókod."
@@ -21,7 +21,7 @@ msgstr "... nyalakan mode rapat. Mantap!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# gambar} other {# gambar}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# pesan spammer potensial} other {# pesan spammer potensial}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reaksi} other {# reaksi}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> masih ada di grup. Coba lagi sebentar lagi."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Diteruskan dari</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Data akun"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Akun ini ada untuk mengirim spam, menipu, atau menyalahgunakan platform."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Akun dibatasi"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategori"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategori"
@@ -7200,7 +7195,7 @@ msgstr "Perubahan langsung diterapkan ke klien yang sedang berjalan."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "saluran"
@@ -7768,9 +7763,9 @@ msgstr "Pilih apa yang dapat dilakukan {clientLabel} di komunitasmu. Hapus centa
msgid "Choose what friends see in their active now panel"
msgstr "Pilih apa yang dilihat teman di panel Aktif sekarang mereka"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Pilih apa yang harus dimiliki anggota sebelum mereka dapat memposting atau mengirim DM ke anggota komunitas."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Pilih apa yang harus dimiliki anggota sebelum mereka dapat memposting atau mengirim DM ke anggota komunitas. Anggota dengan peran dapat melewati pemeriksaan ini. Untuk ruang publik, kami menyarankan untuk mengaktifkan verifikasi."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Tutup akun"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Tutup pesan langsung dengan {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Ciutkan pesan yang belum dibaca untuk {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "diciutkan"
@@ -8643,7 +8638,7 @@ msgstr "Komunitas dan channel tempat Anda tidak dapat mengelola webhook akan dis
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Komunitas yang tercantum di Discovery wajib memindai pesan dari semua anggota. Pengaturan ini tidak dapat diubah selama Discovery aktif."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Komunitas yang tercantum di Discovery minimal memerlukan verifikasi email. Opsi \"Tidak ada\" tidak dapat dipilih selama Discovery aktif."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Hubungkan dengan {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "terhubung"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Mengunduh pembaruan desktop: {percent}% ({formatBytes} / {formatBytes2} dengan {formatBytes3}/dtk)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Mengunduh pembaruan desktop…"
@@ -13294,7 +13289,7 @@ msgstr "Edit lampiran"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Edit kosong"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Favorit kosong"
@@ -14608,7 +14603,7 @@ msgstr "Perluas pesan belum dibaca untuk {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "diperluas"
@@ -15849,7 +15844,7 @@ msgstr "Teruskan media"
msgid "Forward message"
msgstr "Teruskan pesan"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Diteruskan"
@@ -18624,7 +18619,7 @@ msgstr "Penyamaran undangan"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Anggota akan dikeluarkan saat offline kecuali diberi peran."
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Anggota dengan izin \"{pinMessagesPermissionLabel}\" dapat menyematkan pesan untuk semua orang."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Anggota dengan peran dapat melewati pemeriksaan ini. Untuk ruang publik, kami sarankan untuk mengaktifkan verifikasi."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Pesan yang dipublikasikan di saluran pengumuman ini disalin ke saluran A
msgid "Messages you can bookmark"
msgstr "Pesan yang bisa Anda sematkan"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Fitur pesan sedang dijeda"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Fitur pesan di akunmu sedang dijeda. Cek emailmu untuk satu langkah singkat agar bisa lanjut."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Pengiriman pesan di komunitas ini dijeda sementara."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Fitur pesan sedang dijeda"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Bisukan audio streaming"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "dibisukan"
@@ -23984,7 +23990,7 @@ msgstr "Buka detail saluran untuk {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Buka obrolan"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "disematkan"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "tekan untuk menambahkan reaksi"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "tekan untuk menghapus reaksi"
@@ -29530,10 +29536,10 @@ msgstr "Teks yang bisa dipilih"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "dipilih"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Terkirim"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Mengirim lampiran"
@@ -36228,11 +36234,11 @@ msgstr "Sematan DM grup dilepas"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "belum dibaca"
@@ -38120,7 +38126,7 @@ msgstr "Panggilan suara. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "saluran suara"
@@ -39163,7 +39169,7 @@ msgstr "Kemarin pukul {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Kamu"
@@ -40067,16 +40073,6 @@ msgstr "Akunmu"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Akunmu berhasil ditautkan. Sekarang kamu bisa menutup tab ini dan kembali ke aplikasi."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Akun Anda dibatasi"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Akun Anda dibatasi. Periksa email Anda untuk cara mengatasinya."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Akunmu belum diklaim. Tanpa email dan kata sandi, kamu tidak bisa masuk dari perangkat lain dan bisa kehilangan akses ke akunmu. Klaim akunmu sekarang untuk mengamankannya."
@@ -21,7 +21,7 @@ msgstr "... attiva la modalità compatta. Ottimo!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# immagine} other {# immagini}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# messaggio da potenziale spammer} other {# messaggi da potenziali spammer}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reazione} other {# reazioni}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> è ancora nel gruppo. Riprova tra un momento."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Inoltrato da</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Dati account"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "L'account esiste per inviare spam, truffare o abusare della piattaforma."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Account limitato"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Categorie"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "categoria"
@@ -7200,7 +7195,7 @@ msgstr "Le modifiche vengono applicate istantaneamente al client live."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "canale"
@@ -7768,9 +7763,9 @@ msgstr "Scegli cosa può fare {clientLabel} nella tua community. Deseleziona le
msgid "Choose what friends see in their active now panel"
msgstr "Scegli cosa vedono i tuoi amici nel pannello \"Attivi ora\""
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Scegli cosa devono avere i membri prima di poter pubblicare messaggi o inviare messaggi diretti ai membri della community."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Scegli cosa devono avere i membri prima di poter pubblicare o inviare messaggi diretti ai membri della community. I membri con ruoli possono aggirare questi controlli. Per gli spazi pubblici, consigliamo di abilitare la verifica."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Chiudi account"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Chiudi il DM con {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Comprimi i messaggi non letti per {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "chiuso"
@@ -8643,7 +8638,7 @@ msgstr "Le community e i canali in cui non puoi gestire gli webhook sono nascost
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Le community elencate in Scopri devono controllare i messaggi di tutti i membri. Questa impostazione non può essere modificata mentre Scopri è attivo."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Le community elencate in Scopri devono richiedere almeno la verifica dell’email. Non è possibile selezionare \"Nessuno\" mentre Scopri è attivo."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Connetti con {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "connesso"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Download aggiornamento desktop: {percent}% ({formatBytes} / {formatBytes2} a {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Download aggiornamento desktop…"
@@ -13294,7 +13289,7 @@ msgstr "Modifica allegato"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Modifica vuota"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Preferiti vuoti"
@@ -14608,7 +14603,7 @@ msgstr "Espandi i messaggi non letti per {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "espanso"
@@ -15849,7 +15844,7 @@ msgstr "Inoltra contenuto multimediale"
msgid "Forward message"
msgstr "Inoltra messaggio"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Inoltrato"
@@ -18624,7 +18619,7 @@ msgstr "Mascheramento inviti"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "I membri vengono rimossi quando sono offline, a meno che non venga asseg
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "I membri con il permesso \"{pinMessagesPermissionLabel}\" possono fissare messaggi per tutti."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "I membri con ruoli possono ignorare questi controlli. Per gli spazi pubblici, consigliamo di abilitare la verifica."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "I messaggi pubblicati in questi canali di annunci vengono copiati nei tu
msgid "Messages you can bookmark"
msgstr "Messaggi che puoi aggiungere ai preferiti"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "L'invio di messaggi è in pausa"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "L'invio di messaggi è in pausa sul tuo account. Controlla la tua email per completare un passaggio veloce e continuare."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "La messaggistica è temporaneamente in pausa in questa community."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "L'invio di messaggi è in pausa"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Disattiva l’audio dello stream"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "silenziato"
@@ -23984,7 +23990,7 @@ msgstr "Apri i dettagli del canale {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Apri chat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency}ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "fissato"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "premi per aggiungere una reazione"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "premi per rimuovere la reazione"
@@ -29530,10 +29536,10 @@ msgstr "Testo selezionabile"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "selezionato"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Inviato"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Ha inviato un allegato"
@@ -36228,11 +36234,11 @@ msgstr "DM di gruppo non fissato"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "non letto"
@@ -38120,7 +38126,7 @@ msgstr "Chiamata vocale. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "canale vocale"
@@ -39163,7 +39169,7 @@ msgstr "Ieri alle {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Tu"
@@ -40067,16 +40073,6 @@ msgstr "Il tuo account"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Il tuo account è stato collegato. Ora puoi chiudere questa scheda e tornare all'app."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Il tuo account è limitato"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Il tuo account è limitato. Controlla la tua email per sapere come rimuovere la limitazione."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Non hai ancora completato la registrazione del tuo account. Senza email e password, non potrai accedere da altri dispositivi e potresti perdere l’accesso al tuo account. Completa la registrazione ora per proteggerlo."
@@ -21,7 +21,7 @@ msgstr "…コンパクト表示をオンに。いいね!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# 画像} other {# 件の画像}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {#件のスパムの可能性があるメッセージ} other {#件のスパムの可能性があるメッセージ}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {#件のリアクション} other {#件のリアクション}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}、{reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}、{actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0>はまだグループにいます。しばらくして
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>転送元</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "アカウントデータ"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "アカウント制限中"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "カテゴリ"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "カテゴリ"
@@ -7200,7 +7195,7 @@ msgstr "変更はクライアントに即座に適用されます。"
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "チャンネル"
@@ -7768,9 +7763,9 @@ msgstr "{clientLabel} がコミュニティでできることを選択してく
msgid "Choose what friends see in their active now panel"
msgstr "友達の「オンライン中」パネルに表示される内容を選択"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "メンバーが投稿やコミュニティメンバーへのDMを行うために必要な条件を選択してください。"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "コミュニティのメンバーが投稿したり、他のメンバーにダイレクトメッセージを送信したりする前に、満たす必要がある条件を選択します。ロールを持つメンバーはこれらのチェックをスキップできます。公開スペースでは、認証を有効にすることをお勧めします。"
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "アカウントを削除"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "{displayName}とのダイレクトメッセージを閉じる"
@@ -8505,7 +8500,7 @@ msgstr "{channelHeading}の未読メッセージを折りたたむ"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "折りたたまれています"
@@ -8643,7 +8638,7 @@ msgstr "Webhookを管理できないコミュニティやチャンネルは非
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "「見つける」に掲載されているコミュニティは、すべてのメンバーのメッセージをスキャンする必要があります。「見つける」が有効な間は、この設定を変更できません。"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "「見つける」に掲載されているコミュニティには、少なくともメールアドレスの認証が必要です。「見つける」が有効な間は「なし」を選択できません。"
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "{providerName}と連携"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "接続済み"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "デスクトップ版アップデートをダウンロード中: {percent}% ({formatBytes} / {formatBytes2}、{formatBytes3}/秒)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "デスクトップ版アップデートをダウンロード中…"
@@ -13294,7 +13289,7 @@ msgstr "添付ファイルを編集"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "空の編集"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "お気に入りはありません"
@@ -14608,7 +14603,7 @@ msgstr "{channelHeading}の未読メッセージを展開"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "展開中"
@@ -15849,7 +15844,7 @@ msgstr "メディアを転送"
msgid "Forward message"
msgstr "メッセージを転送"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "転送済み"
@@ -18624,7 +18619,7 @@ msgstr "招待のマスク"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "ロールが付与されていない限り、オフラインになると
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "「{pinMessagesPermissionLabel}」の権限を持つメンバーは、すべてのユーザー向けにメッセージをピン留めできます。"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "ロールを持つメンバーはこれらのチェックをバイパスできます。公開スペースでは、認証を有効にすることをおすすめします。"
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "これらのアナウンスチャンネルに投稿されたメッセー
msgid "Messages you can bookmark"
msgstr "ブックマークできるメッセージ"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "メッセージ機能は一時停止中です"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "アカウントのメッセージ機能は一時停止中です。メールでご案内しているかんたんな手続きを済ませると、再開できます。"
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "メッセージ機能は一時停止中です"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "ストリーム音声をミュート"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "ミュート中"
@@ -23984,7 +23990,7 @@ msgstr "{channelName}のチャンネル詳細を開く"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "チャットを開く"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency}ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "ピン留め中"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "「続行」を押してパスキーを使用してください。"
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "押してリアクションを追加"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "押してリアクションを削除"
@@ -29530,10 +29536,10 @@ msgstr "テキスト選択"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "選択中"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "送信済み"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "添付ファイルを送信しました"
@@ -36228,11 +36234,11 @@ msgstr "グループDMのピン留めを解除しました"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "未読"
@@ -38120,7 +38126,7 @@ msgstr "音声通話。{statusText}。"
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "ボイスチャンネル"
@@ -39163,7 +39169,7 @@ msgstr "昨日 {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "自分"
@@ -40067,16 +40073,6 @@ msgstr "アカウント"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "アカウントの連携が完了しました。このタブを閉じてアプリに戻ることができます。"
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "アカウントが制限されています"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "アカウントが制限されています。解除方法については、メールをご確認ください。"
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "アカウントが未登録です。メールアドレスとパスワードを設定していないと、他のデバイスからサインインできず、アカウントにアクセスできなくなる可能性があります。今すぐアカウントを登録して安全を確保しましょう。"
@@ -21,7 +21,7 @@ msgstr "... 좁게 모드를 켜 보세요. 좋아요!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {#개의 이미지} other {#개의 이미지}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {#개의 스팸 의심 메시지} other {#개의 스팸 의심 메시지}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {#개 반응} other {#개 반응}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0>님이 아직 그룹에 있습니다. 잠시 후에 다
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "{sourceInfo}<0>에서 전달됨</0>"
@@ -2787,11 +2787,6 @@ msgstr "계정 데이터"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "계정 제한됨"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "카테고리"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "카테고리"
@@ -7200,7 +7195,7 @@ msgstr "변경사항은 라이브 클라이언트에 즉시 적용됩니다."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "채널"
@@ -7768,9 +7763,9 @@ msgstr "{clientLabel}이(가) 내 커뮤니티에서 수행할 작업을 선택
msgid "Choose what friends see in their active now panel"
msgstr "친구의 활동 중 패널에 표시되는 내용을 선택하세요"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "멤버가 게시하거나 커뮤니티 멤버에게 DM을 보내려면 갖춰야 할 조건을 선택하세요."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "커뮤니티 멤버가 글을 쓰거나 DM을 보내기 전에 반드시 갖춰야 할 조건을 선택하세요. 역할이 있는 멤버는 이 검사를 건너뛸 수 있습니다. 공개 공간의 경우 인증을 활성화하는 것이 좋습니다."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "계정 삭제"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "{displayName}님과의 DM 닫기"
@@ -8505,7 +8500,7 @@ msgstr "{channelHeading}의 읽지 않은 메시지 접기"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "접힘"
@@ -8643,7 +8638,7 @@ msgstr "웹훅을 관리할 수 없는 커뮤니티 및 채널은 숨겨집니
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "디스커버리에 등록된 커뮤니티는 모든 멤버의 메시지를 스캔해야 합니다. 디스커버리가 활성화된 동안에는 이 설정을 변경할 수 없습니다."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "디스커버리에 등록된 커뮤니티는 이메일 인증이 필수입니다. 디스커버리가 활성화된 동안에는 \"없음\"을 선택할 수 없습니다."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "{providerName}에 연결"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "연결됨"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "데스크톱 업데이트 다운로드 중: {percent}% ({formatBytes} / {formatBytes2}, {formatBytes3}/초)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "데스크톱 업데이트 다운로드 중…"
@@ -13294,7 +13289,7 @@ msgstr "첨부 파일 편집"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "빈 편집 내용"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "즐겨찾기 없음"
@@ -14608,7 +14603,7 @@ msgstr "{channelHeading}의 읽지 않은 메시지 펼치기"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "펼쳐짐"
@@ -15849,7 +15844,7 @@ msgstr "미디어 전달"
msgid "Forward message"
msgstr "메시지 전달"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "전달됨"
@@ -18624,7 +18619,7 @@ msgstr "초대 마스킹"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "역할이 부여되지 않으면 오프라인 시 멤버가 제거됩니
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "\"{pinMessagesPermissionLabel}\" 권한이 있는 멤버는 모두가 볼 수 있도록 메시지를 고정할 수 있습니다."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "역할이 있는 멤버는 이 검사를 우회할 수 있습니다. 공개 공간의 경우, 인증 활성화를 권장합니다."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "이 공지 채널에 게시된 메시지가 내 채널로 복사됩니
msgid "Messages you can bookmark"
msgstr "북마크할 수 있는 메시지"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "메시지 기능이 잠시 멈춰 있어요"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "계정의 메시지 기능이 잠시 멈춰 있어요. 이메일로 안내해 드린 간단한 단계 하나만 마치면 다시 이용할 수 있어요."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "메시지 기능이 잠시 멈춰 있어요"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "스트림 오디오 음소거"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "알림 꺼짐"
@@ -23984,7 +23990,7 @@ msgstr "{channelName} 채널 정보 열기"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "채팅 열기"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "핑: {latency}ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "고정됨"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "'계속'을 눌러 패스키를 사용하세요."
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "눌러서 반응 추가"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "눌러서 반응 삭제"
@@ -29530,10 +29536,10 @@ msgstr "텍스트 선택 가능"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "선택됨"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "보냄"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "첨부파일 전송됨"
@@ -36228,11 +36234,11 @@ msgstr "고정 해제된 그룹 DM"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "읽지 않음"
@@ -38120,7 +38126,7 @@ msgstr "음성 통화. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "음성 채널"
@@ -39163,7 +39169,7 @@ msgstr "어제 {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "나"
@@ -40067,16 +40073,6 @@ msgstr "내 계정"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "계정이 성공적으로 연결되었습니다. 이 탭을 닫고 앱으로 돌아가세요."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "계정이 제한되었습니다"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "계정이 제한되었습니다. 해제 방법에 대한 이메일을 확인하세요."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "아직 계정이 등록되지 않았습니다. 이메일과 비밀번호가 없으면 다른 기기에서 로그인할 수 없으며 계정에 대한 액세스 권한을 잃을 수 있습니다. 지금 계정을 등록하여 안전하게 보호하세요."
@@ -21,7 +21,7 @@ msgstr "... įjungsite tankųjį režimą. Puiku!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# vaizdas} few {# vaizdai} many {# vaizdo} other {# vaizdų}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# galima šlamšto siuntėjo žinutė} few {# galimos šlamšto siuntėjo žinutės} other {# galimų šlamšto siuntėjo žinučių}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reakcija} few {# reakcijos} other {# reakcijų}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> vis dar yra grupėje. Bandykite dar kartą po akimirko
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Persiųsta iš</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Paskyros duomenys"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Paskyra skirta šlamštui, sukčiavimui arba piktnaudžiavimui platforma."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Paskyra apribota"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategorijos"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategorija"
@@ -7200,7 +7195,7 @@ msgstr "Pakeitimai iškart pritaikomi veikiančiam klientui."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kanalas"
@@ -7768,9 +7763,9 @@ msgstr "Pasirinkite, ką „{clientLabel}“ gali daryti jūsų bendruomenėje.
msgid "Choose what friends see in their active now panel"
msgstr "Pasirinkite, ką draugai mato savo aktyvumo skydelyje"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Pasirinkite, ką nariai turi turėti, kad galėtų rašyti žinutes ar siųsti tiesiogines žinutes bendruomenės nariams."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Pasirinkite, ką nariai turi turėti prieš galėdami skelbti ar siųsti tiesioginius pranešimus bendruomenės nariams. Nariai, turintys vaidmenis, gali praleisti šiuos patikrinimus. Viešoms erdvėms rekomenduojame įjungti patvirtinimą."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Uždaryti paskyrą"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Uždaryti tiesioginį pokalbį su „{displayName}“"
@@ -8505,7 +8500,7 @@ msgstr "Sutraukti neskaitytas žinutes kanale „{channelHeading}“"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "sutraukta"
@@ -8643,7 +8638,7 @@ msgstr "Bendruomenės ir kanalai, kuriuose negalite tvarkyti webhookų, yra pasl
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Į Atradimą įtrauktos bendruomenės privalo tikrinti visų narių žinutes. Šio nustatymo negalima keisti, kol įjungtas Atradimas."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Į Atradimą įtrauktoms bendruomenėms būtinas bent el. pašto patvirtinimas. Kol įjungtas Atradimas, negalima pasirinkti „Nėra“."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Prisijungti naudojant „{providerName}“"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "prisijungta"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Atsisiunčiamas darbalaukio naujinimas: {percent}% ({formatBytes} / {formatBytes2}, {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Atsisiunčiamas darbalaukio naujinimas…"
@@ -13294,7 +13289,7 @@ msgstr "Redaguoti priedą"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Tuščias redagavimas"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Nėra mėgstamiausių"
@@ -14608,7 +14603,7 @@ msgstr "Išskleisti neperskaitytas žinutes kanale „{channelHeading}“"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "išskleista"
@@ -15849,7 +15844,7 @@ msgstr "Persiųsti mediją"
msgid "Forward message"
msgstr "Persiųsti žinutę"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Persiųsta"
@@ -18625,7 +18620,7 @@ msgstr "Kvietimų maskavimas"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20850,10 +20845,6 @@ msgstr "Nariai pašalinami, kai yra neprisijungę, nebent jiems priskirtas vaidm
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Nariai, turintys leidimą „{pinMessagesPermissionLabel}“, gali prisegti žinutes visiems."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Nariai, turintys vaidmenis, gali apeiti šiuos patikrinimus. Viešosioms erdvėms rekomenduojame įjungti patvirtinimą."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21306,10 +21297,25 @@ msgstr "Pranešimai, paskelbti šiuose informavimo kanaluose, bus nukopijuoti į
msgid "Messages you can bookmark"
msgstr "Pranešimai, kuriuos galite pasižymėti"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Žinučių siuntimas pristabdytas"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Žinučių siuntimas jūsų paskyroje pristabdytas. Peržiūrėkite el. paštą: tęsti galėsite atlikę vieną greitą žingsnį."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Šioje bendruomenėje žinučių siuntimas laikinai pristabdytas."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Žinučių siuntimas pristabdytas"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22052,10 +22058,10 @@ msgstr "Nutildyti srauto garsą"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "nutildyta"
@@ -23985,7 +23991,7 @@ msgstr "Atidaryti kanalo „{channelName}“ išsamią informaciją"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Atidaryti pokalbį"
@@ -25233,7 +25239,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "prisegta"
@@ -25620,12 +25626,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "paspauskite, kad pridėtumėte reakciją"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "paspauskite, kad pašalintumėte reakciją"
@@ -29531,10 +29537,10 @@ msgstr "Pažymimas tekstas"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "pasirinkta"
@@ -29842,7 +29848,7 @@ msgid "Sent"
msgstr "Išsiųsta"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Išsiuntė priedą"
@@ -36229,11 +36235,11 @@ msgstr "Grupės DM atsegtas"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "neskaityta"
@@ -38121,7 +38127,7 @@ msgstr "Balso skambutis. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "balso kanalas"
@@ -39164,7 +39170,7 @@ msgstr "Vakar, {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Jūs"
@@ -40068,16 +40074,6 @@ msgstr "Jūsų paskyra"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Jūsų paskyra sėkmingai susieta. Dabar galite uždaryti šį skirtuką ir grįžti į programėlę."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Jūsų paskyra yra apribota"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Jūsų paskyra yra apribota. Patikrinkite savo el. paštą, kad sužinotumėte, kaip ją atblokuoti."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Jūsų paskyra dar neužregistruota. Be el. pašto ir slaptažodžio negalėsite prisijungti iš kitų įrenginių ir galite prarasti prieigą prie savo paskyros. Užregistruokite paskyrą dabar, kad ją apsaugotumėte."
@@ -21,7 +21,7 @@ msgstr "... compacte modus inschakelen. Mooi!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# afbeelding} other {# afbeeldingen}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# bericht van een mogelijke spammer} other {# berichten van mogelijke spammers}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reactie} other {# reacties}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> zit nog steeds in de groep. Probeer het zo opnieuw."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Doorgestuurd vanuit</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Accountgegevens"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Dit account is bedoeld om te spammen, op te lichten of misbruik te maken van het platform."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Account beperkt"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Categorieën"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "categorie"
@@ -7200,7 +7195,7 @@ msgstr "Wijzigingen worden direct toegepast op de live client."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kanaal"
@@ -7768,9 +7763,9 @@ msgstr "Kies wat {clientLabel} in je community mag doen. Vink alle machtigingen
msgid "Choose what friends see in their active now panel"
msgstr "Kies wat vrienden zien in hun 'nu actief'-paneel"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Kies waaraan leden moeten voldoen voordat ze berichten kunnen plaatsen of communityleden een DM kunnen sturen."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Kies wat leden moeten hebben voordat ze berichten kunnen plaatsen of communityleden een DM kunnen sturen. Leden met rollen kunnen deze controles omzeilen. Voor openbare ruimtes raden we aan verificatie in te schakelen."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Account sluiten"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "DM-gesprek met {displayName} sluiten"
@@ -8505,7 +8500,7 @@ msgstr "Ongelezen berichten voor {channelHeading} inklappen"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "ingeklapt"
@@ -8643,7 +8638,7 @@ msgstr "Communities en kanalen waar je geen webhooks kunt beheren, worden verbor
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Communities die in Ontdekken worden vermeld, moeten berichten van alle leden scannen. Deze instelling kan niet worden gewijzigd zolang Ontdekken is ingeschakeld."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Communities die in Ontdekken worden vermeld, vereisen minimaal e-mailverificatie. Je kunt \"Geen\" niet selecteren zolang Ontdekken is ingeschakeld."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Verbinden met {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "verbonden"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Desktopupdate downloaden: {percent}% ({formatBytes} / {formatBytes2} met {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Desktopupdate downloaden…"
@@ -13294,7 +13289,7 @@ msgstr "Bijlage bewerken"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Lege bewerking"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Favorieten leeg"
@@ -14608,7 +14603,7 @@ msgstr "Ongelezen berichten voor {channelHeading} uitvouwen"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "uitgeklapt"
@@ -15849,7 +15844,7 @@ msgstr "Media doorsturen"
msgid "Forward message"
msgstr "Bericht doorsturen"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Doorgestuurd"
@@ -18624,7 +18619,7 @@ msgstr "Uitnodigingen maskeren"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Leden worden verwijderd wanneer ze offline zijn, tenzij ze een rol krijg
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Leden met de machtiging \"{pinMessagesPermissionLabel}\" kunnen berichten voor iedereen vastzetten."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Leden met rollen kunnen deze controles omzeilen. Voor openbare ruimtes raden we aan verificatie in te schakelen."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Berichten die in deze aankondigingskanalen worden gepubliceerd, worden g
msgid "Messages you can bookmark"
msgstr "Berichten die je kunt vastmaken"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Berichten sturen is gepauzeerd"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Berichten sturen is gepauzeerd voor je account. Kijk in je e-mail voor één snelle stap om verder te gaan."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Het versturen van berichten is tijdelijk gepauzeerd in deze community."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Berichten sturen is gepauzeerd"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Geluid van stream dempen"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "gedempt"
@@ -23984,7 +23990,7 @@ msgstr "Open kanaaldetails voor {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Chat openen"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "vastgezet"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "tik om een reactie toe te voegen"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "tik om de reactie te verwijderen"
@@ -29530,10 +29536,10 @@ msgstr "Selecteerbare tekst"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "geselecteerd"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Verzonden"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Heeft een bijlage verstuurd"
@@ -36228,11 +36234,11 @@ msgstr "Groeps-DM losgemaakt"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "ongelezen"
@@ -38120,7 +38126,7 @@ msgstr "Spraakoproep. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "spraakkanaal"
@@ -39163,7 +39169,7 @@ msgstr "Gisteren om {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Jij"
@@ -40067,16 +40073,6 @@ msgstr "Je account"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Je account is gekoppeld. Je kunt dit tabblad nu sluiten en teruggaan naar de app."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Je account is beperkt"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Je account is beperkt. Controleer je e-mail voor instructies om dit op te heffen."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "De registratie van je account is nog niet voltooid. Zonder e-mailadres en wachtwoord kun je niet inloggen vanaf andere apparaten en kun je de toegang tot je account verliezen. Voltooi nu de registratie om je account te beveiligen."
@@ -21,7 +21,7 @@ msgstr "... slå på kompakt modus. Bra!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# bilde} other {# bilder}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# melding fra en mulig spammer} other {# meldinger fra en mulig spammer}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reaksjon} other {# reaksjoner}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> er fortsatt i gruppen. Prøv igjen om et øyeblikk."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Videresendt fra</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Kontodata"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Kontoen eksisterer for å spamme, svindle eller misbruke plattformen."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Konto begrenset"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategorier"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategori"
@@ -7200,7 +7195,7 @@ msgstr "Endringer brukes umiddelbart i den aktive klienten."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kanal"
@@ -7768,9 +7763,9 @@ msgstr "Velg hva {clientLabel} kan gjøre i fellesskapet ditt. Fjern avmerkingen
msgid "Choose what friends see in their active now panel"
msgstr "Velg hva venner ser i panelet «Aktiv nå»"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Velg hva medlemmer må ha før de kan legge ut innlegg eller sende direktemeldinger til fellesskapsmedlemmer."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Velg hva medlemmer må ha før de kan poste eller sende direktemeldinger til fellesskapsmedlemmer. Medlemmer med roller kan omgå disse sjekkene. For offentlige rom anbefaler vi å aktivere verifisering."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Avslutt konto"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Lukk direktemeldingssamtalen med {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Skjul uleste meldinger for {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "sammenfoldet"
@@ -8643,7 +8638,7 @@ msgstr "Fellesskap og kanaler der du ikke kan administrere webhooks, er skjult."
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Fellesskap som er oppført under Oppdag, må skanne meldinger fra alle medlemmer. Denne innstillingen kan ikke endres mens Oppdag er aktivert."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Fellesskap som er oppført under Oppdag, krever minst bekreftet e-postadresse. «Ingen» kan ikke velges mens Oppdag er aktivert."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Koble til med {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "tilkoblet"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Laster ned oppdatering til skrivebordsappen: {percent} % ({formatBytes} / {formatBytes2} med {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Laster ned oppdatering til skrivebordsappen …"
@@ -13294,7 +13289,7 @@ msgstr "Rediger vedlegg"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Tom redigering"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Tom favorittliste"
@@ -14608,7 +14603,7 @@ msgstr "Vis uleste meldinger for {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "utvidet"
@@ -15849,7 +15844,7 @@ msgstr "Videresend medieinnhold"
msgid "Forward message"
msgstr "Videresend melding"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Videresendt"
@@ -18624,7 +18619,7 @@ msgstr "Invitasjonsmaskering"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Medlemmer fjernes når de er frakoblet, med mindre de har fått en rolle
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Medlemmer med «{pinMessagesPermissionLabel}» kan feste meldinger for alle."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Medlemmer med roller kan omgå disse kontrollene. For offentlige fellesskap anbefaler vi å aktivere verifisering."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Meldinger publisert i disse kunngjøringskanalene kopieres til dine kana
msgid "Messages you can bookmark"
msgstr "Meldinger du kan bokmerke"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Meldinger er satt på pause"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Meldinger er satt på pause for kontoen din. Sjekk e-posten din for et raskt steg så du kan fortsette."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Sending av meldinger er midlertidig satt på pause i dette fellesskapet."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Meldinger er satt på pause"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Slå av strømmelyden"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "dempet"
@@ -23984,7 +23990,7 @@ msgstr "Åpne kanalinfo for {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Åpne chat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "festet"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "trykk for å legge til reaksjon"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "trykk for å fjerne reaksjon"
@@ -29530,10 +29536,10 @@ msgstr "Tekst som kan markeres"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "valgt"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Sendt"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Sendte et vedlegg"
@@ -36228,11 +36234,11 @@ msgstr "Løsnet gruppechat"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "ulest"
@@ -38120,7 +38126,7 @@ msgstr "Taleanrop. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "talekanal"
@@ -39163,7 +39169,7 @@ msgstr "I går kl. {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Du"
@@ -40067,16 +40073,6 @@ msgstr "Din konto"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Kontoen din er nå koblet til. Du kan lukke denne fanen og gå tilbake til appen."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Kontoen din er begrenset"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Kontoen din er begrenset. Sjekk e-posten din for å se hvordan du kan fjerne begrensningen."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Du har ikke fullført registreringen av kontoen din ennå. Uten e-postadresse og passord kan du ikke logge på fra andre enheter, og du kan miste tilgangen til kontoen. Fullfør registreringen nå for å sikre kontoen din."
@@ -21,7 +21,7 @@ msgstr "... włącz tryb zwarty. Super!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# obraz} few {# obrazy} many {# obrazów} other {# obrazu}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# wiadomość od potencjalnego spamera} few {# wiadomości od potencjalnego spamera} many {# wiadomości od potencjalnego spamera} other {# wiadomości od potencjalnego spamera}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reakcja} few {# reakcje} many {# reakcji} other {# reakcji}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "Reakcja {emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "Reakcja {emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> nadal jest w grupie. Spróbuj ponownie za chwilę."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Przekazano z</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Dane konta"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Konto służy do spamowania, oszukiwania lub nadużywania platformy."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Konto ograniczone"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategorie"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategoria"
@@ -7200,7 +7195,7 @@ msgstr "Zmiany są natychmiast stosowane w kliencie."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kanał"
@@ -7768,9 +7763,9 @@ msgstr "Wybierz, co {clientLabel} może robić w Twojej społeczności. Odznacz
msgid "Choose what friends see in their active now panel"
msgstr "Wybierz, co znajomi widzą w panelu „Aktywni teraz”"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Wybierz, jakie wymagania muszą spełnić członkowie, zanim będą mogli publikować wiadomości lub wysyłać wiadomości prywatne do członków społeczności."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Wybierz, co członkowie muszą spełnić, zanim będą mogli publikować lub wysyłać wiadomości prywatne do członków społeczności. Członkowie z rolami mogą pominąć te sprawdzenia. W przypadku przestrzeni publicznych zalecamy włączenie weryfikacji."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Zamknij konto"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Zamknij rozmowę prywatną z {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Zwiń nieprzeczytane wiadomości dla {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "zwinięte"
@@ -8643,7 +8638,7 @@ msgstr "Społeczności i kanały, w których nie możesz zarządzać webhookami,
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Społeczności widoczne w sekcji Odkrywanie muszą skanować wiadomości wszystkich członków. Tego ustawienia nie można zmienić, gdy Odkrywanie jest włączone."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Społeczności widoczne w sekcji Odkrywanie wymagają co najmniej weryfikacji adresu e-mail. Nie można wybrać opcji „Brak”, gdy Odkrywanie jest włączone."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Połącz z {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "połączono"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "PW"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Pobieranie aktualizacji aplikacji: {percent}% ({formatBytes} / {formatBytes2} z prędkością {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Pobieranie aktualizacji aplikacji…"
@@ -13294,7 +13289,7 @@ msgstr "Edytuj załącznik"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Pusta edycja"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Brak ulubionych"
@@ -14608,7 +14603,7 @@ msgstr "Rozwiń nieprzeczytane wiadomości dla {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "rozwinięte"
@@ -15849,7 +15844,7 @@ msgstr "Przekaż dalej multimedia"
msgid "Forward message"
msgstr "Przekaż wiadomość dalej"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Przekazano"
@@ -18624,7 +18619,7 @@ msgstr "Maskowanie zaproszeń"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Członkowie są usuwani, gdy są offline, chyba że otrzymają rolę."
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Członkowie z uprawnieniem „{pinMessagesPermissionLabel}” mogą przypinać wiadomości dla wszystkich."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Członkowie z rolami mogą omijać te weryfikacje. W przypadku przestrzeni publicznych zalecamy włączenie weryfikacji."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Wiadomości publikowane na tych kanałach informacyjnych są kopiowane n
msgid "Messages you can bookmark"
msgstr "Wiadomości, które możesz dodać do zakładek"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Wysyłanie wiadomości wstrzymane"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Wysyłanie wiadomości na Twoim koncie jest wstrzymane. Sprawdź e-mail i wykonaj jeden szybki krok, aby kontynuować."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Wysyłanie wiadomości w tej społeczności jest tymczasowo wstrzymane."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Wysyłanie wiadomości wstrzymane"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Wycisz dźwięk transmisji"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "wyciszono"
@@ -23984,7 +23990,7 @@ msgstr "Otwórz szczegóły kanału „{channelName}”"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Otwórz czat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "przypięta"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "naciśnij, aby dodać reakcję"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "naciśnij, aby usunąć reakcję"
@@ -29530,10 +29536,10 @@ msgstr "Tekst do zaznaczenia"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "wybrano"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Wysłano"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Wysłano załącznik"
@@ -36228,11 +36234,11 @@ msgstr "Odpięto czat grupowy"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "nieprzeczytane"
@@ -38120,7 +38126,7 @@ msgstr "Połączenie głosowe. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "kanał głosowy"
@@ -39163,7 +39169,7 @@ msgstr "Wczoraj o {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Ty"
@@ -40067,16 +40073,6 @@ msgstr "Twoje konto"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Twoje konto zostało pomyślnie połączone. Możesz teraz zamknąć tę kartę i wrócić do aplikacji."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Twoje konto ma ograniczenia"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Twoje konto jest ograniczone. Sprawdź e-mail, aby dowiedzieć się, jak je odblokować."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Rejestracja Twojego konta nie została jeszcze dokończona. Bez adresu e-mail i hasła nie będzie można zalogować się z innych urządzeń i możesz stracić dostęp do konta. Dokończ rejestrację teraz, aby zabezpieczyć konto."
@@ -21,7 +21,7 @@ msgstr "... ativar o modo denso. Boa!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# imagem} other {# imagens}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, =1 {# mensagem de um possível remetente de spam} other {# mensagens de possíveis remetentes de spam}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, =0 {# reações} one {# reação} other {# reações}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> ainda está no grupo. Tente novamente em instantes."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Encaminhada de</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Dados da conta"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "A conta existe para enviar spam, aplicar golpes ou abusar da plataforma."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Conta limitada"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Categorias"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "categoria"
@@ -7200,7 +7195,7 @@ msgstr "As alterações são aplicadas instantaneamente ao cliente ativo."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "canal"
@@ -7768,9 +7763,9 @@ msgstr "Escolha o que {clientLabel} pode fazer na sua comunidade. Desmarque as p
msgid "Choose what friends see in their active now panel"
msgstr "Escolha o que os amigos veem no painel \"Ativos agora\""
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Escolha o que os membros devem ter antes de poderem postar ou enviar mensagens diretas para os membros da comunidade."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Escolha o que os membros precisam ter antes de poderem postar ou enviar mensagens diretas para membros da comunidade. Membros com cargos podem ignorar essas verificações. Para espaços públicos, recomendamos ativar a verificação."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Fechar conta"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Fechar mensagem direta com {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Recolher mensagens não lidas para {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "recolhido"
@@ -8643,7 +8638,7 @@ msgstr "Comunidades e canais onde você não pode gerenciar webhooks são oculta
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "As comunidades listadas em Descobrir precisam analisar as mensagens de todos os membros. Esta configuração não pode ser alterada enquanto Descobrir estiver ativado."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "As comunidades listadas em Descobrir exigem, no mínimo, a verificação de e-mail. A opção \"Nenhuma\" não pode ser selecionada enquanto Descobrir estiver ativado."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Conectar com {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "conectado"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "Mensagem direta"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "MD"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Baixando atualização do aplicativo: {percent}% ({formatBytes} / {formatBytes2} a {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Baixando atualização para computador…"
@@ -13294,7 +13289,7 @@ msgstr "Editar anexo"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Edição vazia"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Favoritos vazios"
@@ -14608,7 +14603,7 @@ msgstr "Expandir mensagens não lidas para {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "expandido"
@@ -15849,7 +15844,7 @@ msgstr "Encaminhar mídia"
msgid "Forward message"
msgstr "Encaminhar mensagem"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Encaminhada"
@@ -18624,7 +18619,7 @@ msgstr "Máscara de convite"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Membros são removidos quando offline, a menos que recebam um cargo."
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Membros com \"{pinMessagesPermissionLabel}\" podem fixar mensagens para todos."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Membros com cargos podem ignorar essas verificações. Para espaços públicos, recomendamos ativar a verificação."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Mensagens publicadas nestes canais de anúncio são copiadas para os seu
msgid "Messages you can bookmark"
msgstr "Mensagens que você pode marcar"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "O envio de mensagens está pausado"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "O envio de mensagens está pausado na sua conta. Confira seu e-mail para concluir uma etapa rápida e continuar."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "O envio de mensagens está temporariamente pausado nesta comunidade."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "O envio de mensagens está pausado"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Silenciar áudio da transmissão"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "silenciado"
@@ -23984,7 +23990,7 @@ msgstr "Abrir detalhes do canal {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Abrir chat"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "fixada"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "toque para adicionar uma reação"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "toque para remover a reação"
@@ -29530,10 +29536,10 @@ msgstr "Texto selecionável"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "selecionado"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Enviado"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Enviou um anexo"
@@ -36228,11 +36234,11 @@ msgstr "Conversa em grupo desafixada"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "não lidas"
@@ -38120,7 +38126,7 @@ msgstr "Chamada de voz. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "canal de voz"
@@ -39163,7 +39169,7 @@ msgstr "Ontem às {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Você"
@@ -40067,16 +40073,6 @@ msgstr "Sua conta"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Sua conta foi vinculada com sucesso. Agora você pode fechar esta aba e voltar para o aplicativo."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Sua conta está limitada"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Sua conta está limitada. Verifique seu e-mail para saber como removê-la."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Sua conta ainda não foi reivindicada. Sem um e-mail e senha, você não conseguirá fazer login em outros aparelhos e poderá perder o acesso à sua conta. Reivindique sua conta agora para protegê-la."
@@ -21,7 +21,7 @@ msgstr "... activezi modul dens. Super!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# imagine} few {# imagini} other {# de imagini}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# mesaj potențial spam} few {# mesaje potențial spam} other {# de mesaje potențial spam}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reacție} few {# reacții} other {# de reacții}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> este încă în grup. Încearcă din nou peste câteva
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Redirecționat din</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Date cont"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Contul există pentru spam, înșelătorii sau abuzuri pe platformă."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Cont limitat"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Categorii"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "categorie"
@@ -7200,7 +7195,7 @@ msgstr "Modificările se aplică instantaneu clientului live."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "canal"
@@ -7768,9 +7763,9 @@ msgstr "Alege ce poate face {clientLabel} în comunitatea ta. Debifează permisi
msgid "Choose what friends see in their active now panel"
msgstr "Alege ce văd prietenii în panoul lor „Activ acum”"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Alege ce trebuie să aibă membrii înainte de a putea posta sau de a trimite DM-uri membrilor comunității."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Alege ce trebuie să aibă membrii înainte de a putea posta sau trimite mesaje directe membrilor comunității. Membrii cu roluri pot ocoli aceste verificări. Pentru spațiile publice, recomandăm activarea verificării."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Închide contul"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Închide conversația directă cu {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Restrânge mesajele necitite pentru {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "restrâns"
@@ -8643,7 +8638,7 @@ msgstr "Comunitățile și canalele unde nu poți gestiona webhook-uri sunt ascu
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Comunitățile listate în Discovery trebuie să scaneze mesajele tuturor membrilor. Această setare nu poate fi modificată cât timp Discovery este activat."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Comunitățile listate în Discovery necesită cel puțin verificarea adresei de e-mail. Opțiunea „Niciunul” nu poate fi selectată cât timp Discovery este activat."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Conectează-te cu {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "conectat"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Se descarcă actualizarea pentru desktop: {percent}% ({formatBytes} / {formatBytes2} la {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Se descarcă actualizarea pentru desktop…"
@@ -13294,7 +13289,7 @@ msgstr "Editează atașamentul"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Editare goală"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Listă de favorite goală"
@@ -14608,7 +14603,7 @@ msgstr "Extinde mesajele necitite pentru {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "extins"
@@ -15849,7 +15844,7 @@ msgstr "Redirecționează media"
msgid "Forward message"
msgstr "Redirecționează mesajul"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Redirecționat"
@@ -18624,7 +18619,7 @@ msgstr "Mascare invitație"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Membrii sunt eliminați când sunt offline, dacă nu li se atribuie un r
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Membrii cu „{pinMessagesPermissionLabel}” pot fixa mesaje pentru toată lumea."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Membrii cu roluri pot ocoli aceste verificări. Pentru spațiile publice, recomandăm activarea verificării."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Mesajele publicate în aceste canale de anunțuri sunt copiate în canal
msgid "Messages you can bookmark"
msgstr "Mesaje pe care le poți salva"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Trimiterea de mesaje este în pauză"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Trimiterea de mesaje este în pauză pentru contul tău. Uită-te în e-mail: te așteaptă un pas rapid ca să poți continua."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Mesageria este întreruptă temporar în această comunitate."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Trimiterea de mesaje este în pauză"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Dezactivează sunetul fluxului"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "pe silențios"
@@ -23984,7 +23990,7 @@ msgstr "Deschide detaliile canalului {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Deschide chatul"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "fixat"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "apasă pentru a adăuga o reacție"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "apasă pentru a elimina reacția"
@@ -29530,10 +29536,10 @@ msgstr "Text selectabil"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "selectat"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Trimis"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "A trimis un atașament"
@@ -36228,11 +36234,11 @@ msgstr "Fixarea DM-ului de grup a fost anulată"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "necitite"
@@ -38120,7 +38126,7 @@ msgstr "Apel vocal. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "canal vocal"
@@ -39163,7 +39169,7 @@ msgstr "Ieri la {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Tu"
@@ -40067,16 +40073,6 @@ msgstr "Contul tău"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Contul tău a fost conectat cu succes. Acum poți închide această filă și reveni la aplicație."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Contul tău este limitat"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Contul tău este limitat. Verifică-ți emailul pentru instrucțiuni despre cum să îl deblochezi."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Contul tău nu a fost revendicat încă. Fără o adresă de e-mail și o parolă, nu te vei putea conecta de pe alte dispozitive și ai putea pierde accesul la contul tău. Revendică-ți contul acum pentru a-l securiza."
@@ -21,7 +21,7 @@ msgstr "...включите плотный режим. Отлично!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# изображение} few {# изображения} many {# изображений} other {# изображения}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# потенциальное спам-сообщение} few {# потенциальных спам-сообщения} many {# потенциальных спам-сообщений} other {# потенциальных спам-сообщений}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# реакция} few {# реакции} many {# реакций} other {# реакций}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> всё ещё в группе. Попробуйте е
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Переслано из</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Данные аккаунта"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "Аккаунт ограничен"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Категории"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "категория"
@@ -7200,7 +7195,7 @@ msgstr "Изменения мгновенно применяются в акти
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "канал"
@@ -7768,9 +7763,9 @@ msgstr "Выберите, что {clientLabel} сможет делать в ва
msgid "Choose what friends see in their active now panel"
msgstr "Выберите, что друзья видят на панели «Сейчас онлайн»"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Выберите, что должны иметь участники, прежде чем они смогут публиковать сообщения или писать личные сообщения другим участникам сообщества."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Выберите, что должны иметь участники, прежде чем они смогут публиковать сообщения или отправлять личные сообщения участникам сообщества. Участники с ролями могут обойти эти проверки. Для публичных пространств мы рекомендуем включить верификацию."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Закрыть аккаунт"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Закрыть личный чат с {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Свернуть непрочитанные сообщения для {c
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "свернуто"
@@ -8643,7 +8638,7 @@ msgstr "Сообщества и каналы, где вы не можете уп
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Сообщества в каталоге обязаны проверять сообщения всех участников. Пока сообщество размещено в каталоге, этот параметр изменить нельзя."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Сообщества в каталоге должны требовать как минимум подтвержденный адрес электронной почты. Пока сообщество размещено в каталоге, выбрать «Нет» нельзя."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Подключиться через {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "подключено"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "ЛС"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "ЛС"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Скачивание обновления для ПК: {percent}% ({formatBytes} / {formatBytes2} со скоростью {formatBytes3}/с)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Скачивание обновления для ПК…"
@@ -13294,7 +13289,7 @@ msgstr "Изменить вложение"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Пустое сообщение"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Избранное пусто"
@@ -14608,7 +14603,7 @@ msgstr "Развернуть непрочитанные сообщения дл
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "развернуто"
@@ -15849,7 +15844,7 @@ msgstr "Переслать медиафайл"
msgid "Forward message"
msgstr "Переслать сообщение"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Переслано"
@@ -18624,7 +18619,7 @@ msgstr "Маскировка приглашений"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Участники будут удалены, когда выйдут и
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Участники с разрешением «{pinMessagesPermissionLabel}» могут закреплять сообщения для всех."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Участники с ролями могут обходить эти проверки. Для открытых сообществ рекомендуем включить верификацию."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Сообщения, опубликованные в этих канал
msgid "Messages you can bookmark"
msgstr "Сообщения, которые можно добавить в закладки"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Отправка сообщений на паузе"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Отправка сообщений в вашем аккаунте на паузе. Загляните в почту: чтобы продолжить, нужен всего один быстрый шаг."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Отправка сообщений на паузе"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Отключить звук трансляции"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "без звука"
@@ -23984,7 +23990,7 @@ msgstr "Открыть информацию о канале «{channelName}»"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Открыть чат"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Пинг: {latency} мс"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "закреплено"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "Нажмите «Продолжить», чтобы использовать ключ доступа."
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "нажмите, чтобы добавить реакцию"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "нажмите, чтобы удалить реакцию"
@@ -29530,10 +29536,10 @@ msgstr "Выделяемый текст"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "выбрано"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Отправлено"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Отправил вложение"
@@ -36228,11 +36234,11 @@ msgstr "Групповой чат откреплен"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "непрочитанные"
@@ -38120,7 +38126,7 @@ msgstr "Голосовой звонок. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "голосовой канал"
@@ -39163,7 +39169,7 @@ msgstr "Вчера в {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Вы"
@@ -40067,16 +40073,6 @@ msgstr "Ваш аккаунт"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Ваш аккаунт успешно привязан. Теперь вы можете закрыть эту вкладку и вернуться в приложение."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Ваш аккаунт ограничен"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Ваша учетная запись ограничена. Проверьте почту, чтобы узнать, как снять ограничения."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Ваш аккаунт ещё не подтверждён. Без электронной почты и пароля вы не сможете войти с других устройств и можете потерять доступ к аккаунту. Подтвердите аккаунт сейчас, чтобы обезопасить его."
@@ -21,7 +21,7 @@ msgstr "... aktivera kompakt läge. Snyggt!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# bild} other {# bilder}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# meddelande från en möjlig spammare} other {# meddelanden från möjliga spammare}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# reaktion} other {# reaktioner}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> är fortfarande kvar i gruppen. Försök igen om en li
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Vidarebefordrat från</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Kontodata"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Kontot finns för att skräpposta, lura eller missbruka plattformen."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Konto begränsat"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategorier"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategori"
@@ -7200,7 +7195,7 @@ msgstr "Ändringar tillämpas direkt i klienten."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kanal"
@@ -7768,9 +7763,9 @@ msgstr "Välj vad {clientLabel} får göra i din community. Avmarkera behörighe
msgid "Choose what friends see in their active now panel"
msgstr "Välj vad vänner ser i sin panel för aktiva nu"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Välj vad medlemmar måste ha innan de kan skriva inlägg eller skicka direktmeddelanden till communitymedlemmar."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Välj vad medlemmar måste ha innan de kan posta eller skicka direktmeddelanden till community-medlemmar. Medlemmar med roller kan kringgå dessa kontroller. För publika utrymmen rekommenderar vi att aktivera verifiering."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Stäng konto"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Stäng DM-konversation med {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Fäll ihop olästa meddelanden för {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "hopfälld"
@@ -8643,7 +8638,7 @@ msgstr "Sammanslutningar och kanaler där du inte kan hantera webhooks är dolda
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Communities som listas i Upptäck måste granska meddelanden från alla medlemmar. Den här inställningen kan inte ändras medan Upptäck är aktiverat."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Communities som listas i Upptäck måste kräva minst e-postverifiering. ”Ingen” kan inte väljas medan Upptäck är aktiverat."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Anslut med {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "ansluten"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Laddar ner uppdatering för datorappen: {percent} % ({formatBytes} / {formatBytes2} med {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Laddar ner uppdatering för datorappen…"
@@ -13294,7 +13289,7 @@ msgstr "Redigera bilaga"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Tom redigering"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Tomma favoriter"
@@ -14608,7 +14603,7 @@ msgstr "Visa olästa meddelanden för {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "utfälld"
@@ -15849,7 +15844,7 @@ msgstr "Vidarebefordra medieobjekt"
msgid "Forward message"
msgstr "Vidarebefordra meddelande"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Vidarebefordrat"
@@ -18624,7 +18619,7 @@ msgstr "Maskering av inbjudningar"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Medlemmar tas bort när de är offline om de inte har tilldelats en roll
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Medlemmar med behörigheten \"{pinMessagesPermissionLabel}\" kan fästa meddelanden åt alla."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Medlemmar med roller kan kringgå dessa kontroller. För offentliga utrymmen rekommenderar vi att du aktiverar verifiering."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Meddelanden som publiceras i dessa meddelandekanaler kopieras till dina
msgid "Messages you can bookmark"
msgstr "Meddelanden du kan bokmärka"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Meddelanden är pausade"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Meddelanden är pausade på ditt konto. Kolla din e-post så hittar du ett snabbt steg för att fortsätta."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Det är tillfälligt pausat att skicka meddelanden i den här communityn."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Meddelanden är pausade"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Stäng av sändningens ljud"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "tystad"
@@ -23984,7 +23990,7 @@ msgstr "Öppna kanalinformation för {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Öppna chatt"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "fäst"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "tryck för att lägga till reaktion"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "tryck för att ta bort reaktion"
@@ -29530,10 +29536,10 @@ msgstr "Markerbar text"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "vald"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Skickat"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Skickade en bilaga"
@@ -36228,11 +36234,11 @@ msgstr "Grupp-DM-konversationen lossad"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "oläst"
@@ -38120,7 +38126,7 @@ msgstr "Röstsamtal. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "röstkanal"
@@ -39163,7 +39169,7 @@ msgstr "Igår kl. {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Du"
@@ -40067,16 +40073,6 @@ msgstr "Ditt konto"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Ditt konto har länkats. Du kan nu stänga den här fliken och återgå till appen."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Ditt konto är begränsat"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Ditt konto är begränsat. Kontrollera din e-post för instruktioner om hur du tar bort begränsningen."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Ditt konto är ännu inte säkrat. Utan e-postadress och lösenord kan du inte logga in från andra enheter och riskerar att förlora åtkomsten till kontot. Säkra ditt konto nu."
@@ -21,7 +21,7 @@ msgstr "... เปิดโหมดกระชับแล้ว เยี่
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# รูปภาพ} other {# รูปภาพ}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# ข้อความที่อาจเป็นสแปม} other {# ข้อความที่อาจเป็นสแปม}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# รีแอ็กชัน} other {# รีแอ็กชัน}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> ยังอยู่ในกลุ่ม ลอง
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>ส่งต่อจาก</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "ข้อมูลบัญชี"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "บัญชีถูกจำกัด"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "หมวดหมู่"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "หมวดหมู่"
@@ -7200,7 +7195,7 @@ msgstr "การเปลี่ยนแปลงจะมีผลทันท
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "ช่อง"
@@ -7768,9 +7763,9 @@ msgstr "เลือกสิ่งที่ {clientLabel} ทำได้ใน
msgid "Choose what friends see in their active now panel"
msgstr "เลือกสิ่งที่เพื่อนเห็นในแผงกำลังใช้งานอยู่ตอนนี้"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "เลือกสิ่งที่สมาชิกต้องมีก่อนที่จะโพสต์หรือส่งข้อความส่วนตัวถึงสมาชิกในคอมมูนิตี้ได้"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "เลือกว่าสมาชิกต้องมีอะไรบ้างก่อนที่จะโพสต์หรือส่งข้อความส่วนตัวถึงสมาชิกในชุมชน สมาชิกที่มีบทบาทสามารถข้ามการตรวจสอบเหล่านี้ได้ สำหรับพื้นที่สาธารณะ เราแนะนำให้เปิดใช้งานการยืนยัน"
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "ปิดบัญชี"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "ปิดข้อความส่วนตัวกับ {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "ยุบข้อความที่ยังไม่ได้อ่
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "ยุบแล้ว"
@@ -8643,7 +8638,7 @@ msgstr "ชุมชนและช่องทางที่คุณไม่
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "คอมมูนิตี้ที่อยู่ใน Discovery ต้องสแกนข้อความจากสมาชิกทุกคน การตั้งค่านี้เปลี่ยนแปลงไม่ได้ขณะที่เปิดใช้งาน Discovery"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "คอมมูนิตี้ที่อยู่ใน Discovery ต้องมีการยืนยันอีเมลเป็นอย่างน้อย จะเลือก \"ไม่มี\" ไม่ได้ขณะที่เปิดใช้งาน Discovery"
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "เชื่อมต่อกับ {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "เชื่อมต่อแล้ว"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "กำลังดาวน์โหลดการอัปเดตเดสก์ท็อป: {percent}% ({formatBytes} / {formatBytes2} ที่ {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "กำลังดาวน์โหลดการอัปเดตเดสก์ท็อป…"
@@ -13294,7 +13289,7 @@ msgstr "แก้ไขไฟล์แนบ"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "แก้ไขให้ว่าง"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "รายการโปรดว่างเปล่า"
@@ -14608,7 +14603,7 @@ msgstr "ขยายข้อความที่ยังไม่ได้อ
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "ขยายแล้ว"
@@ -15849,7 +15844,7 @@ msgstr "ส่งต่อสื่อ"
msgid "Forward message"
msgstr "ส่งต่อข้อความ"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "ส่งต่อแล้ว"
@@ -18624,7 +18619,7 @@ msgstr "ซ่อนคำเชิญ"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "สมาชิกจะถูกนำออกเมื่อออฟ
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "สมาชิกที่มีสิทธิ์ \"{pinMessagesPermissionLabel}\" สามารถปักหมุดข้อความให้ทุกคนเห็นได้"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "สมาชิกที่มีบทบาทสามารถข้ามการตรวจสอบเหล่านี้ได้ สำหรับพื้นที่สาธารณะ เราแนะนำให้เปิดใช้งานการยืนยัน"
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "ข้อความที่โพสต์ในช่องประ
msgid "Messages you can bookmark"
msgstr "ข้อความที่คุณสามารถบุ๊กมาร์กได้"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "การส่งข้อความหยุดชั่วคราว"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "ขณะนี้การส่งข้อความในบัญชีของคุณหยุดชั่วคราว โปรดดูอีเมลของคุณ แล้วทำขั้นตอนง่าย ๆ เพียงขั้นตอนเดียวเพื่อใช้งานต่อ"
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "การส่งข้อความหยุดชั่วคราว"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "ปิดเสียงสตรีม"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "ปิดเสียง"
@@ -23984,7 +23990,7 @@ msgstr "เปิดรายละเอียดช่อง {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "เปิดแชท"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "ปักหมุดแล้ว"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "กด \"ดำเนินการต่อ\" เพื่อใช้พาสคีย์ของคุณ"
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "กดเพื่อเพิ่มรีแอ็กชัน"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "กดเพื่อลบรีแอ็กชัน"
@@ -29530,10 +29536,10 @@ msgstr "ข้อความที่เลือกได้"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "เลือกแล้ว"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "ส่งแล้ว"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "ส่งไฟล์แนบ"
@@ -36228,11 +36234,11 @@ msgstr "เลิกปักหมุดแชทกลุ่มแล้ว"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "ยังไม่ได้อ่าน"
@@ -38120,7 +38126,7 @@ msgstr "โทรด้วยเสียง {statusText}"
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "ช่องเสียง"
@@ -39163,7 +39169,7 @@ msgstr "เมื่อวานนี้ เวลา {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "คุณ"
@@ -40067,16 +40073,6 @@ msgstr "บัญชีของคุณ"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "เชื่อมบัญชีของคุณสำเร็จแล้ว ปิดแท็บนี้แล้วกลับไปที่แอปได้เลย"
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "บัญชีของคุณมีข้อจำกัด"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "บัญชีของคุณถูกจำกัด โปรดตรวจสอบอีเมลของคุณเพื่อดูวิธีปลดล็อก"
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "บัญชีของคุณยังไม่ได้ยืนยัน หากไม่มีอีเมลและรหัสผ่าน คุณจะไม่สามารถลงชื่อเข้าใช้จากอุปกรณ์อื่นได้ และอาจสูญเสียการเข้าถึงบัญชีของคุณ ยืนยันบัญชีของคุณตอนนี้เพื่อความปลอดภัย"
@@ -21,7 +21,7 @@ msgstr "... yoğun modu açın. Harika!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# resim} other {# resim}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# olası spam mesajı} other {# olası spam mesajı}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# tepki} other {# tepki}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> hâlâ grupta. Birazdan tekrar deneyin."
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Şuradan iletildi:</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Hesap verileri"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Hesap, spam yapmak, dolandırıcılık yapmak veya platformu kötüye kullanmak için var."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Hesap sınırlı"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Kategoriler"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "kategori"
@@ -7200,7 +7195,7 @@ msgstr "Değişiklikler anında canlı istemciye uygulanır."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kanal"
@@ -7768,9 +7763,9 @@ msgstr "{clientLabel} uygulamasının topluluğunuzda neler yapabileceğini seç
msgid "Choose what friends see in their active now panel"
msgstr "Arkadaşlarınızın şu an aktif panelinde neler göreceğini seçin"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Üyelerin mesaj gönderebilmek veya topluluk üyelerine DM gönderebilmek için nelere sahip olması gerektiğini seçin."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Topluluk üyelerinin gönderi yapmadan veya topluluk üyilerine DM atmadan önce sahip olması gerekenleri seçin. Rolü olan üyeler bu kontrolleri atlayabilir. Genel alanlar için doğrulamayı etkinleştirmenizi öneririz."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Hesabı kapat"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "{displayName} ile olan doğrudan mesajı kapat"
@@ -8505,7 +8500,7 @@ msgstr "{channelHeading} için okunmamış mesajları daralt"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "daraltıldı"
@@ -8643,7 +8638,7 @@ msgstr "Webhook'ları yönetemediğiniz topluluklar ve kanallar gizlenir."
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Keşfet'te listelenen toplulukların tüm üyelerden gelen mesajları taraması gerekir. Keşfet etkinken bu ayar değiştirilemez."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Keşfet'te listelenen topluluklarda en az e-posta doğrulaması gerekir. Keşfet etkinken \"Hiçbiri\" seçilemez."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "{providerName} ile bağlan"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "bağlandı"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Masaüstü güncellemesi indiriliyor: %{percent} ({formatBytes} / {formatBytes2}, {formatBytes3}/sn)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Masaüstü güncellemesi indiriliyor…"
@@ -13294,7 +13289,7 @@ msgstr "Eki düzenle"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Boş düzenleme"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Favoriler boş"
@@ -14608,7 +14603,7 @@ msgstr "{channelHeading} için okunmamış mesajları genişlet"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "genişletildi"
@@ -15849,7 +15844,7 @@ msgstr "Medyayı ilet"
msgid "Forward message"
msgstr "Mesajı ilet"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "İletildi"
@@ -18624,7 +18619,7 @@ msgstr "Davet maskeleme"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Çevrimdışı olduklarında bir rol atanmadığı sürece üyeler kald
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "\"{pinMessagesPermissionLabel}\" iznine sahip üyeler, herkes için mesaj sabitleyebilir."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Rolü olan üyeler bu kontrolleri atlayabilir. Herkese açık alanlar için doğrulamayı etkinleştirmenizi öneririz."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Bu duyuru kanallarında yayınlanan mesajlar sizin kanallarınıza kopya
msgid "Messages you can bookmark"
msgstr "Yer imlerine ekleyebileceğin mesajlar"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Mesajlaşma duraklatıldı"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Hesabınızda mesajlaşma şimdilik duraklatıldı. Devam etmek için e-postanıza göz atın, sizi tek bir kısa adım bekliyor."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Bu toplulukta mesajlaşma geçici olarak duraklatıldı."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Mesajlaşma duraklatıldı"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Akış sesini kapat"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "sessize alındı"
@@ -23984,7 +23990,7 @@ msgstr "{channelName} için kanal ayrıntılarını aç"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Sohbeti aç"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency}ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "sabitlenmiş"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "tepki eklemek için basın"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "tepkiyi kaldırmak için basın"
@@ -29530,10 +29536,10 @@ msgstr "Seçilebilir metin"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "seçildi"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Gönderildi"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Bir ek gönderdi"
@@ -36228,11 +36234,11 @@ msgstr "Grup DM'inin sabitlemesi kaldırıldı"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "okunmadı"
@@ -38120,7 +38126,7 @@ msgstr "Sesli arama. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "sesli kanal"
@@ -39163,7 +39169,7 @@ msgstr "Dün {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Sen"
@@ -40067,16 +40073,6 @@ msgstr "Hesabınız"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Hesabınız başarıyla bağlandı. Artık bu sekmeyi kapatıp uygulamaya dönebilirsiniz."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Hesabınız sınırlı"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Hesabınız sınırlı. Nasıl kaldırılacağını öğrenmek için e-postanızı kontrol edin."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Hesabınız henüz sahiplenilmedi. E-posta ve parola olmadan başka cihazlardan giriş yapamazsınız ve hesabınıza erişiminizi kaybedebilirsiniz. Güvence altına almak için hesabınızı şimdi sahiplenin."
@@ -21,7 +21,7 @@ msgstr "...увімкнете щільний режим. Чудово!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# зображення} few {# зображення} many {# зображень} other {# зображення}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# потенційно спамерське повідомлення} few {# потенційно спамерські повідомлення} many {# потенційно спамерських повідомлень} other {# потенційно спамерських повідомлень}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# реакція} few {# реакції} many {# реакцій} other {# реакції}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> досі в групі. Спробуйте ще раз
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Переслано з</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Дані облікового запису"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "Обліковий запис обмежено"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Категорії"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "категорія"
@@ -7200,7 +7195,7 @@ msgstr "Зміни миттєво застосовуються до активн
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "канал"
@@ -7768,9 +7763,9 @@ msgstr "Виберіть, що {clientLabel} може робити у вашій
msgid "Choose what friends see in their active now panel"
msgstr "Виберіть, що друзі бачитимуть на панелі «Активні зараз»"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Виберіть, що повинні мати учасники, перш ніж вони зможуть писати в каналах або надсилати особисті повідомлення учасникам спільноти."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Виберіть, що учасники повинні мати, перш ніж вони зможуть публікувати дописи або надсилати особисті повідомлення учасникам спільноти. Учасники з ролями можуть обійти ці перевірки. Для публічних просторів рекомендуємо ввімкнути верифікацію."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Закрити обліковий запис"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Закрити приватний чат із {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Згорнути непрочитані повідомлення для
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "згорнуто"
@@ -8643,7 +8638,7 @@ msgstr "Спільноти та канали, де ви не можете кер
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Спільноти в Discovery мають перевіряти повідомлення від усіх учасників. Цей параметр не можна змінити, доки Discovery ввімкнено."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Спільноти в Discovery потребують щонайменше підтвердження електронної пошти. Поки Discovery ввімкнено, не можна вибрати «Немає»."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Підключитися через {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "підключено"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "Приватний чат"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "ПЧ"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Завантаження оновлення для комп'ютера: {percent}% ({formatBytes} / {formatBytes2} зі швидкістю {formatBytes3}/с)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Завантаження оновлення для комп'ютера…"
@@ -13294,7 +13289,7 @@ msgstr "Редагувати вкладення"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Порожнє редагування"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Порожній список вибраного"
@@ -14608,7 +14603,7 @@ msgstr "Розгорнути непрочитані повідомлення д
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "розгорнуто"
@@ -15849,7 +15844,7 @@ msgstr "Переслати медіа"
msgid "Forward message"
msgstr "Переслати повідомлення"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Переслано"
@@ -18624,7 +18619,7 @@ msgstr "Маскування запрошень"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Учасники вилучаються, коли вони офлайн,
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Учасники з дозволом «{pinMessagesPermissionLabel}» можуть закріплювати повідомлення для всіх."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Учасники з ролями можуть обходити ці перевірки. Для публічних просторів радимо ввімкнути перевірку."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Повідомлення, опубліковані в цих канал
msgid "Messages you can bookmark"
msgstr "Повідомлення, які можна додати до закладок"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Надсилання повідомлень на паузі"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Надсилання повідомлень у вашому обліковому записі на паузі. Загляньте в електронну пошту: щоб продовжити, потрібен лише один швидкий крок."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Надсилання повідомлень на паузі"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Вимкнути звук трансляції"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "сповіщення вимкнено"
@@ -23984,7 +23990,7 @@ msgstr "Відкрити деталі каналу «{channelName}»"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Відкрити чат"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Пінг: {latency} мс"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "закріплено"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "Натисніть «Продовжити», щоб скористатися своїм ключем доступу."
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "натисніть, щоб додати реакцію"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "натисніть, щоб видалити реакцію"
@@ -29530,10 +29536,10 @@ msgstr "Текст, що виділяється"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "вибрано"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Надіслано"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Надіслано вкладення"
@@ -36228,11 +36234,11 @@ msgstr "Відкріплений груповий чат"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "непрочитані"
@@ -38120,7 +38126,7 @@ msgstr "Голосовий дзвінок. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "голосовий канал"
@@ -39163,7 +39169,7 @@ msgstr "Вчора о {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Ви"
@@ -40067,16 +40073,6 @@ msgstr "Ваш обліковий запис"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Ваш обліковий запис успішно прив'язано. Тепер ви можете закрити цю вкладку та повернутися до застосунку."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Ваш обліковий запис обмежено"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Ваш обліковий запис обмежено. Перевірте свою електронну пошту, щоб дізнатися, як зняти обмеження."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Ваш обліковий запис ще не зареєстровано. Без електронної пошти та пароля ви не зможете ввійти з інших пристроїв і можете втратити доступ до свого облікового запису. Зареєструйте свій обліковий запис зараз, щоб убезпечити його."
@@ -21,7 +21,7 @@ msgstr "... bật chế độ dày đặc. Tuyệt!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# ảnh} other {# ảnh}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# tin nhắn có thể là spam} other {# tin nhắn có thể là spam}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# cảm xúc} other {# cảm xúc}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName}, {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}: {reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}: {reactionCountText}, {actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> vẫn còn trong nhóm. Hãy thử lại sau giây lá
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>Đã chuyển tiếp từ</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "Dữ liệu tài khoản"
msgid "Account exists to spam, scam, or abuse the platform."
msgstr "Tài khoản này được tạo ra để gửi tin rác, lừa đảo hoặc lạm dụng nền tảng."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Account limited"
msgstr "Tài khoản bị giới hạn"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "Danh mục"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "danh mục"
@@ -7200,7 +7195,7 @@ msgstr "Thay đổi được áp dụng ngay cho ứng dụng đang chạy."
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "kênh"
@@ -7768,9 +7763,9 @@ msgstr "Chọn những gì {clientLabel} có thể làm trong cộng đồng c
msgid "Choose what friends see in their active now panel"
msgstr "Chọn những gì bạn bè thấy trong mục Đang hoạt động của họ"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "Chọn những gì thành viên phải có trước khi họ có thể đăng bài hoặc nhắn tin trực tiếp cho thành viên cộng đồng."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Chọn những gì thành viên phải có trước khi họ có thể đăng bài hoặc gửi tin nhắn trực tiếp cho các thành viên cộng đồng. Thành viên có vai trò có thể bỏ qua các kiểm tra này. Đối với các không gian công khai, chúng tôi khuyên bạn nên bật xác minh."
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "Đóng tài khoản"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "Đóng tin nhắn trực tiếp với {displayName}"
@@ -8505,7 +8500,7 @@ msgstr "Thu gọn tin nhắn chưa đọc cho {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "đã thu gọn"
@@ -8643,7 +8638,7 @@ msgstr "Cộng đồng và kênh mà bạn không thể quản lý webhook sẽ
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "Các cộng đồng được liệt kê trong Khám phá bắt buộc phải quét tin nhắn từ tất cả thành viên. Bạn không thể thay đổi cài đặt này khi Khám phá đang bật."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "Các cộng đồng được liệt kê trong Khám phá bắt buộc phải có ít nhất mức xác minh email. Không thể chọn \"Không\" khi Khám phá đang bật."
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "Kết nối với {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "đã kết nối"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "DM"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "Đang tải bản cập nhật cho máy tính: {percent}% ({formatBytes} / {formatBytes2} với tốc độ {formatBytes3}/s)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "Đang tải bản cập nhật cho máy tính…"
@@ -13294,7 +13289,7 @@ msgstr "Chỉnh sửa tệp đính kèm"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "Chỉnh sửa trống"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "Mục yêu thích trống"
@@ -14608,7 +14603,7 @@ msgstr "Mở rộng tin nhắn chưa đọc cho {channelHeading}"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "đã mở rộng"
@@ -15849,7 +15844,7 @@ msgstr "Chuyển tiếp phương tiện"
msgid "Forward message"
msgstr "Chuyển tiếp tin nhắn"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "Đã chuyển tiếp"
@@ -18624,7 +18619,7 @@ msgstr "Ẩn lời mời"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "Thành viên sẽ bị xóa khỏi cộng đồng khi ngoại tuyến tr
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "Thành viên có quyền \"{pinMessagesPermissionLabel}\" có thể ghim tin nhắn cho mọi người."
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "Thành viên có vai trò có thể bỏ qua các kiểm tra này. Đối với không gian công cộng, chúng tôi khuyên bạn nên bật xác minh."
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "Tin nhắn được đăng trong các kênh này sẽ được sao chép
msgid "Messages you can bookmark"
msgstr "Tin nhắn bạn có thể đánh dấu"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "Tính năng nhắn tin đang tạm dừng"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "Tính năng nhắn tin trên tài khoản của bạn đang tạm dừng. Hãy kiểm tra email và làm một bước đơn giản để tiếp tục."
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
msgstr "Tính năng nhắn tin đang tạm dừng trong cộng đồng này."
#. Developer tools debug menu label. Internal-only surface for developers; translators may keep this terse.
#: src/features/channel/components/channel_header_components/developer_tools/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "Tính năng nhắn tin đang tạm dừng"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "Tắt âm thanh luồng phát"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "đã tắt tiếng"
@@ -23984,7 +23990,7 @@ msgstr "Mở chi tiết kênh {channelName}"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "Mở trò chuyện"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Độ trễ: {latency}ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "đã ghim"
@@ -25619,12 +25625,12 @@ 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
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "nhấn để thêm cảm xúc"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "nhấn để gỡ cảm xúc"
@@ -29530,10 +29536,10 @@ msgstr "Văn bản có thể chọn"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "đã chọn"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "Đã gửi"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "Đã gửi một tệp đính kèm"
@@ -36228,11 +36234,11 @@ msgstr "Đã bỏ ghim tin nhắn nhóm"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "chưa đọc"
@@ -38120,7 +38126,7 @@ msgstr "Cuộc gọi thoại. {statusText}."
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "kênh thoại"
@@ -39163,7 +39169,7 @@ msgstr "Hôm qua lúc {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "Bạn"
@@ -40067,16 +40073,6 @@ msgstr "Tài khoản của bạn"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "Tài khoản của bạn đã được liên kết thành công. Bây giờ bạn có thể đóng tab này và quay lại ứng dụng."
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "Tài khoản của bạn bị giới hạn"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "Tài khoản của bạn bị giới hạn. Kiểm tra email để biết cách gỡ bỏ giới hạn."
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "Tài khoản của bạn chưa được xác nhận. Nếu không có email và mật khẩu, bạn sẽ không thể đăng nhập từ các thiết bị khác và có thể mất quyền truy cập vào tài khoản của mình. Hãy xác nhận tài khoản ngay để bảo vệ tài khoản."
@@ -21,7 +21,7 @@ msgstr "…开启紧凑模式。赞!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# 张图片} other {# 张图片}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, other {# 条疑似垃圾消息}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, other {# 条回应}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName},{reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}:{reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}:{reactionCountText},{actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0> 仍在群聊中。请稍后重试。"
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>转发自</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "账号数据"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "账户受限"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "类别"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "类别"
@@ -7200,7 +7195,7 @@ msgstr "更改会立即应用于客户端。"
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "频道"
@@ -7768,9 +7763,9 @@ msgstr "选择 {clientLabel} 在你的社区中可以执行的操作。取消勾
msgid "Choose what friends see in their active now panel"
msgstr "选择好友在“正在活跃”面板中看到的内容"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "选择成员在发帖或私信社区成员前必须满足的条件。"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "选择成员在发布帖子或向社区成员发送私信前必须满足的条件。拥有角色的成员可以绕过这些检查。对于公开频道,我们建议启用验证。"
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "注销账号"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "关闭与 {displayName} 的私信"
@@ -8505,7 +8500,7 @@ msgstr "收起“{channelHeading}”的未读消息"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "已收起"
@@ -8643,7 +8638,7 @@ msgstr "无法管理入站 webhook 的社群和频道已隐藏。"
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "列入社区发现的社区必须扫描所有成员的消息。启用社区发现后,无法更改此设置。"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "列入社区发现的社区至少需要邮箱验证。启用社区发现后,无法选择“无”。"
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "连接 {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "已连接"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "私信"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "私信"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "正在下载桌面版更新:{percent}%({formatBytes} / {formatBytes2},速度 {formatBytes3}/秒)"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "正在下载桌面版更新…"
@@ -13294,7 +13289,7 @@ msgstr "编辑附件"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "清空编辑"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "收藏夹为空"
@@ -14608,7 +14603,7 @@ msgstr "展开 {channelHeading} 的未读消息"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "已展开"
@@ -15849,7 +15844,7 @@ msgstr "转发媒体"
msgid "Forward message"
msgstr "转发消息"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "已转发"
@@ -18624,7 +18619,7 @@ msgstr "隐藏邀请链接"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "成员离线时会被移除,除非为其分配了身份组。"
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "拥有“{pinMessagesPermissionLabel}”权限的成员可以为所有人置顶消息。"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "拥有身份组的成员可以绕过这些检查。对于公共空间,我们建议启用验证。"
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "发布在这些公告频道中的消息将被复制到你的频道中。
msgid "Messages you can bookmark"
msgstr "可收藏的消息"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "消息功能已暂停"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "你账号的消息功能已暂停。请查看邮箱,完成一个简单步骤即可继续使用。"
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "消息功能已暂停"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "静音直播音频"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "已静音"
@@ -23984,7 +23990,7 @@ msgstr "打开“{channelName}”的频道详情"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "打开聊天"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "延迟:{latency}ms"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "已置顶"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "按“继续”以使用你的通行密钥。"
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "轻触以添加表情回应"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "轻触以移除表情回应"
@@ -29530,10 +29536,10 @@ msgstr "可选文本"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "已选"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "已发送"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "发送了附件"
@@ -36228,11 +36234,11 @@ msgstr "已取消置顶群聊"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "未读"
@@ -38120,7 +38126,7 @@ msgstr "语音通话。{statusText}。"
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "语音频道"
@@ -39163,7 +39169,7 @@ msgstr "昨天 {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "你"
@@ -40067,16 +40073,6 @@ msgstr "你的账号"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "你的账号已成功关联。现在可以关闭此标签页并返回应用。"
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "您的账户受限"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "您的账号已被限制。请检查您的电子邮件,了解如何解除限制。"
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "你的账号尚未认领。如果没有邮箱和密码,你将无法在其他设备上登录,并可能失去账号访问权限。请立即认领账号以保障安全。"
@@ -21,7 +21,7 @@ msgstr "…開啟緊湊模式。讚喔!"
#. Button or menu action label in the channel and chat user message. Keep it concise.
#. Suffix after the message text in the forward modal preview when the forwarded message was edited.
#: src/features/channel/components/MessageAttachments.tsx:392
#: src/features/channel/components/MessageAttachments.tsx:390
#: src/features/channel/components/UserMessage.tsx:75
#: src/features/messaging/components/modals/ForwardMessagePreview.tsx:26
msgid "(edited)"
@@ -1019,8 +1019,8 @@ msgid "{count, plural, one {# image} other {# images}}"
msgstr "{count, plural, one {# 張圖片} other {# 張圖片}}"
#: src/features/channel/components/ChannelSourcePreview.tsx:245
#: src/features/channel/components/direct_message/DMListItem.tsx:437
#: src/features/channel/components/direct_message/DMListItem.tsx:601
#: src/features/channel/components/direct_message/DMListItem.tsx:430
#: src/features/channel/components/direct_message/DMListItem.tsx:592
#: src/features/guild/components/bottomsheets/GuildHeaderBottomSheet.tsx:118
#: src/features/user/components/modals/MutualItemsSheet.tsx:159
#: src/features/user/components/modals/user_profile_modal/MutualGroupItem.tsx:26
@@ -1051,7 +1051,7 @@ msgid "{count, plural, one {# potential spammer message} other {# potential spam
msgstr "{count, plural, one {# 則可能的垃圾訊息} other {# 則可能的垃圾訊息}}"
#: src/features/app/components/shared/MessageReactionsContent.tsx:56
#: src/features/channel/components/MessageReactions.tsx:146
#: src/features/channel/components/MessageReactions.tsx:143
msgid "{count, plural, one {# reaction} other {# reactions}}"
msgstr "{count, plural, one {# 個反應} other {# 個反應}}"
@@ -1329,12 +1329,12 @@ msgid "{emojiName}, {reactionCountText}"
msgstr "{emojiName},{reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:50
#: src/features/channel/components/MessageReactions.tsx:48
msgid "{emojiName}: {reactionCountText}"
msgstr "{emojiName}:{reactionCountText}"
#. Short label in the channel and chat message reactions. Keep it concise. Preserve {emojiName}, {reactionCountText}, {actionText}; they are inserted by code.
#: src/features/channel/components/MessageReactions.tsx:55
#: src/features/channel/components/MessageReactions.tsx:53
msgid "{emojiName}: {reactionCountText}, {actionText}"
msgstr "{emojiName}:{reactionCountText},{actionText}"
@@ -2215,8 +2215,8 @@ msgstr "<0>{username}</0>仍在群組中。請稍後再試一次。"
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the community and channel the message came from.
#. Attribution line on a forwarded message, above the forwarded content. sourceInfo is the icon and name of the conversation the message came from.
#: src/features/channel/components/MessageAttachments.tsx:243
#: src/features/channel/components/MessageAttachments.tsx:299
#: src/features/channel/components/MessageAttachments.tsx:241
#: src/features/channel/components/MessageAttachments.tsx:297
msgid "<0>Forwarded from</0>{sourceInfo}"
msgstr "<0>轉傳自</0>{sourceInfo}"
@@ -2787,11 +2787,6 @@ msgstr "帳號資料"
msgid "Account exists to spam, scam, or abuse the platform."
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/OptionPresets.ts:49
msgid "Account limited"
msgstr "帳號受限"
#. 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/AccountSecuritySections.ts:124
msgid "Account removal"
@@ -6730,7 +6725,7 @@ msgid "Categories"
msgstr "類別"
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:84
#: src/features/app/components/layout/ChannelItem.tsx:83
msgid "category"
msgstr "類別"
@@ -7200,7 +7195,7 @@ msgstr "變更會即時套用至執行中的用戶端。"
#. Fallback channel-name placeholder used inside the textarea message hint when no name is available. Lowercase.
#. Lowercase generic channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:92
#: src/features/app/components/layout/ChannelItem.tsx:91
#: src/features/channel/components/channel_textarea/shared.ts:12
msgid "channel"
msgstr "頻道"
@@ -7768,9 +7763,9 @@ msgstr "選擇「{clientLabel}」可以在您的社群中執行哪些操作。
msgid "Choose what friends see in their active now panel"
msgstr "選擇好友在「目前在線上」面板中會看到什麼"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:292
msgid "Choose what members must have before they can post or DM community members."
msgstr "選擇成員發文或傳送私訊給社群成員前,必須具備的條件。"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:291
msgid "Choose what members must have before they can post or DM community members. Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "設定成員在發佈訊息或傳送私訊給社群成員前必須擁有的條件。擁有角色的成員可以略過這些檢查。建議為公開空間啟用驗證。"
#. Scope option (radio) that lets the user pick conversation kinds and exclude specific communities.
#: src/features/user/components/modals/tabs/privacy_safety_tab/data_request_modal/DataRequestModal.tsx:71
@@ -8296,7 +8291,7 @@ msgid "Close account"
msgstr "關閉帳號"
#. Accessible label and tooltip for the close-DM button on a DM list row.
#: src/features/channel/components/direct_message/DMListItem.tsx:83
#: src/features/channel/components/direct_message/DMListItem.tsx:82
msgid "Close direct message with {displayName}"
msgstr "關閉與 {displayName} 的私訊"
@@ -8505,7 +8500,7 @@ msgstr "收合「{channelHeading}」的未讀訊息"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for a collapsed category.
#: src/features/app/components/layout/ChannelItem.tsx:100
#: src/features/app/components/layout/ChannelItem.tsx:99
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:85
msgid "collapsed"
msgstr "已收合"
@@ -8643,7 +8638,7 @@ msgstr "無法管理網頁掛鉤的社群和頻道將會隱藏。"
msgid "Communities listed in Discovery are required to scan messages from all members. This setting cannot be changed while Discovery is enabled."
msgstr "在探索中列出的社群必須掃描所有成員的訊息。啟用探索時無法變更此設定。"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:301
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:302
msgid "Communities listed in Discovery require at least email verification. None cannot be selected while Discovery is enabled."
msgstr "在探索中列出的社群至少需要驗證電子郵件。啟用探索時,無法選擇「無」。"
@@ -9149,7 +9144,7 @@ msgid "Connect with {providerName}"
msgstr "連結 {providerName}"
#. Lowercase state label used inside channel-list accessible text for the current voice channel.
#: src/features/app/components/layout/ChannelItem.tsx:116
#: src/features/app/components/layout/ChannelItem.tsx:115
msgid "connected"
msgstr "已連線"
@@ -12678,7 +12673,7 @@ msgid "DM"
msgstr "DM"
#. Very short badge shown in place of an avatar on a favorited direct-message row. Must fit about 2-3 characters; abbreviate rather than translate in full.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:70
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:68
msgctxt "channel-badge"
msgid "DM"
msgstr "私訊"
@@ -13039,7 +13034,7 @@ msgid "Downloading desktop update: {percent}% ({formatBytes} / {formatBytes2} at
msgstr "正在下載桌面版更新:{percent}%({formatBytes} / {formatBytes2},每秒 {formatBytes3})"
#. Short desktop updater status label.
#: src/features/app/state/Updater.ts:46
#: src/features/app/state/Updater.ts:48
msgid "Downloading desktop update…"
msgstr "正在下載桌面版更新…"
@@ -13294,7 +13289,7 @@ msgstr "編輯附件"
#. Action that opens the edit-category modal.
#. Action that opens the edit-category modal.
#. Tooltip and accessible label for the category settings button in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:120
#: src/features/app/components/layout/ChannelItem.tsx:119
#: src/features/ui/action_menu/items/CategoryMenuData.tsx:85
#: src/features/ui/action_menu/items/CategoryMenuItems.tsx:62
msgid "Edit category"
@@ -13754,7 +13749,7 @@ msgid "Empty edit"
msgstr "清空編輯"
#. Short label in the app layout favorites channel list content.
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:77
#: src/features/app/components/layout/FavoritesChannelListContent.tsx:75
msgid "Empty favorites"
msgstr "沒有最愛項目"
@@ -14608,7 +14603,7 @@ msgstr "展開「{channelHeading}」的未讀訊息"
#. Lowercase screen-reader fragment in the sidebar navigation guild folder item.
#. Lowercase state label used inside channel-list accessible text for an expanded category.
#: src/features/app/components/layout/ChannelItem.tsx:104
#: src/features/app/components/layout/ChannelItem.tsx:103
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:81
msgid "expanded"
msgstr "已展開"
@@ -15849,7 +15844,7 @@ msgstr "轉傳媒體"
msgid "Forward message"
msgstr "轉傳訊息"
#: src/features/channel/components/MessageAttachments.tsx:362
#: src/features/channel/components/MessageAttachments.tsx:360
msgid "Forwarded"
msgstr "已轉傳"
@@ -18624,7 +18619,7 @@ msgstr "邀請遮蔽"
#. Action label that opens the invite flow.
#. Button or menu action label in the guild header popout. Keep it concise.
#. Tooltip and accessible label for the invite button shown beside a channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:124
#: src/features/app/components/layout/ChannelItem.tsx:123
#: src/features/guild/components/popouts/GuildHeaderPopout.tsx:58
#: src/features/ui/action_menu/items/GuildMenuData.tsx:84
msgid "Invite members"
@@ -20849,10 +20844,6 @@ msgstr "除非獲得身分組,否則成員離線時就會被移除。"
msgid "Members with \"{pinMessagesPermissionLabel}\" can pin messages for everyone."
msgstr "擁有「{pinMessagesPermissionLabel}」權限的成員可以為所有人釘選訊息。"
#: src/features/guild/components/modals/guild_tabs/GuildModerationTab.tsx:295
msgid "Members with roles can bypass these checks. For public spaces, we recommend enabling verification."
msgstr "擁有身分組的成員可以略過這些檢查。對於公開空間,我們建議啟用驗證。"
#. Helper text under the Allow mentions switch in the role editor. {mentionEveryonePermissionLabel} is the localized name of the Mention Everyone permission and should match its label exactly.
#: src/features/guild/components/modals/guild_tabs/guild_roles_tab/RoleEditor.tsx:47
msgid "Members with the \"{mentionEveryonePermissionLabel}\" permission can always mention roles, regardless of this setting."
@@ -21305,10 +21296,25 @@ msgstr "發佈於這些公告頻道的訊息會被複製到你的頻道。"
msgid "Messages you can bookmark"
msgstr "可收藏的訊息"
#. Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Messaging is paused"
msgstr "訊息功能已暫停"
#. Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Messaging is paused on your account. Check your email for a quick step to continue."
msgstr "您帳號的訊息功能已暫停。請查看電子郵件,完成一個簡單步驟即可繼續使用。"
#: src/features/channel/components/barriers/BarrierComponents.tsx:274
msgid "Messaging is temporarily paused in this community."
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/OptionPresets.ts:49
msgid "Messaging paused"
msgstr "訊息功能已暫停"
#. Column header for saved billing payment methods.
#: src/features/app/components/dialogs/components/plutonium/PaymentMethodList.tsx:65
msgid "Method"
@@ -22051,10 +22057,10 @@ msgstr "將串流音訊靜音"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel is muted.
#. Screen-reader fragment announcing that the DM list row is muted. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:112
#: src/features/app/components/layout/ChannelItem.tsx:111
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:62
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:39
#: src/features/channel/components/direct_message/DMListItem.tsx:75
#: src/features/channel/components/direct_message/DMListItem.tsx:74
msgid "muted"
msgstr "已靜音"
@@ -23984,7 +23990,7 @@ msgstr "開啟「{channelName}」的頻道詳細資訊"
#. Context-menu action that opens a voice channel's embedded chat view without connecting to voice.
#. Tooltip and accessible label for the chat icon shown beside a voice channel in the channel list.
#: src/features/app/components/layout/ChannelItem.tsx:128
#: src/features/app/components/layout/ChannelItem.tsx:127
#: src/features/ui/action_menu/items/ChannelMenuData.tsx:156
msgid "Open chat"
msgstr "開啟聊天"
@@ -25232,7 +25238,7 @@ msgid "Ping: {latency}ms"
msgstr "Ping: {latency} 毫秒"
#. Screen-reader fragment announcing that the DM list row is pinned. Lowercase fragment.
#: src/features/channel/components/direct_message/DMListItem.tsx:79
#: src/features/channel/components/direct_message/DMListItem.tsx:78
msgid "pinned"
msgstr "已釘選"
@@ -25619,12 +25625,12 @@ msgid "Press Continue to use your passkey."
msgstr "按下「繼續」以使用您的通行金鑰。"
#. Label in the channel and chat message reactions.
#: src/features/channel/components/MessageReactions.tsx:46
#: src/features/channel/components/MessageReactions.tsx:44
msgid "press to add reaction"
msgstr "按一下以新增反應"
#. Label in the channel and chat message reactions. Keep the tone plain and specific.
#: src/features/channel/components/MessageReactions.tsx:42
#: src/features/channel/components/MessageReactions.tsx:40
msgid "press to remove reaction"
msgstr "按一下以移除反應"
@@ -29530,10 +29536,10 @@ msgstr "可選取文字"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text for the selected channel.
#. Screen-reader suffix announcing that the DM list row is the active selection. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:96
#: src/features/app/components/layout/ChannelItem.tsx:95
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:54
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:35
#: src/features/channel/components/direct_message/DMListItem.tsx:67
#: src/features/channel/components/direct_message/DMListItem.tsx:66
msgid "selected"
msgstr "已選取"
@@ -29841,7 +29847,7 @@ msgid "Sent"
msgstr "已傳送"
#. DM list row preview text when the most recent message has only attachments.
#: src/features/channel/components/direct_message/DMListItem.tsx:63
#: src/features/channel/components/direct_message/DMListItem.tsx:62
msgid "Sent an attachment"
msgstr "傳送了附件"
@@ -36228,11 +36234,11 @@ msgstr "已取消釘選群組私訊"
#. Lowercase screen-reader fragment in the sidebar navigation guild list item.
#. Lowercase state label used inside channel-list accessible text when a channel has unread messages.
#. Screen-reader fragment announcing that the DM list row has unread messages. Lowercase fragment.
#: src/features/app/components/layout/ChannelItem.tsx:108
#: src/features/app/components/layout/ChannelItem.tsx:107
#: src/features/app/components/layout/sidebar_nav/GuildFolderItem.tsx:89
#: src/features/app/components/layout/sidebar_nav/GuildListDMItem.tsx:58
#: src/features/app/components/layout/sidebar_nav/UseGuildListItemState.ts:27
#: src/features/channel/components/direct_message/DMListItem.tsx:71
#: src/features/channel/components/direct_message/DMListItem.tsx:70
msgid "unread"
msgstr "未讀"
@@ -38120,7 +38126,7 @@ msgstr "語音通話。{statusText}。"
#. Generic channel-type token used inside a wider delete confirmation string.
#. Lowercase channel type label used inside channel-list accessible text.
#: src/features/app/components/layout/ChannelItem.tsx:88
#: src/features/app/components/layout/ChannelItem.tsx:87
#: src/features/ui/action_menu/items/ChannelMenuItems.tsx:79
msgid "voice channel"
msgstr "語音頻道"
@@ -39163,7 +39169,7 @@ msgstr "昨天 {timeString}"
#. First-person prefix used in DM list row preview when the current user is the message author.
#: src/features/app/components/layout/MobileBottomNav.tsx:153
#: src/features/channel/components/direct_message/DMListItem.tsx:59
#: src/features/channel/components/direct_message/DMListItem.tsx:58
msgid "You"
msgstr "您"
@@ -40067,16 +40073,6 @@ msgstr "您的帳號"
msgid "Your account has been linked successfully. You can now close this tab and return to the app."
msgstr "您的帳號已成功連結。現在您可以關閉此分頁並返回應用程式。"
#. Title of the error modal shown when an action fails because the current account is limited.
#: src/features/user/utils/AccountLimitUtils.ts:15
msgid "Your account is limited"
msgstr "您的帳號受限"
#. Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.
#: src/features/user/utils/AccountLimitUtils.ts:10
msgid "Your account is limited. Check your email for how to lift it."
msgstr "你的帳號受到限制。請檢查你的電子郵件,了解如何解除限制。"
#: src/features/app/components/dialogs/components/UnclaimedAccountAlert.tsx:26
msgid "Your account is not yet claimed. Without an email and password, you won't be able to sign in from other devices and you could lose access to your account. Claim your account now to secure it."
msgstr "您的帳號尚未認領。如果沒有電子郵件和密碼,您將無法從其他裝置登入,並可能因此失去帳號的存取權。請立即認領您的帳號以確保安全。"
@@ -206,26 +206,6 @@ class Messages {
return messages.ready && messages.length > 0 && !messages.cached;
}
shouldPreloadLatestPage(channelId: string): boolean {
if (!GatewayConnection.isConnected || !Channels.getChannel(channelId)) {
return false;
}
const messages = ChannelMessages.get(channelId);
if (!messages) return true;
if (messages.loadingMore || ChannelMessages.isRetained(channelId)) return false;
return messages.length === 0 ? !messages.ready : messages.cached;
}
preloadLatestPage(channelId: string, guildId?: string | null): boolean {
if (!this.shouldPreloadLatestPage(channelId)) {
return false;
}
const channel = Channels.getChannel(channelId);
const resolvedGuildId = guildId ?? channel?.guildId ?? (channel?.isPrivate() ? ME : undefined);
this.handleChannelSelect({guildId: resolvedGuildId ?? undefined, channelId});
return true;
}
getMessage(channelId: string, messageId: string): Message | undefined {
return ChannelMessages.getOrCreate(channelId).get(messageId);
}
@@ -13,7 +13,11 @@ import {
precacheAssets,
seedAppShell,
} from '@app/features/platform/service_worker/WorkerAppShell';
import {shouldDeleteWorkerCache, WORKER_CACHE_PREFIX} from '@app/features/platform/service_worker/WorkerCacheCleanup';
import {
shouldDeleteWorkerCache,
WORKER_CACHE_PREFIX,
WORKER_NAVIGATION_CACHE_PREFIX,
} from '@app/features/platform/service_worker/WorkerCacheCleanup';
import {getWorkerFetchRoute} from '@app/features/platform/service_worker/WorkerFetchRouting';
import {
getBadgeCount,
@@ -45,7 +49,7 @@ const ensureServiceWorkerReady: Promise<void> = Promise.resolve();
const SERVICE_WORKER_VERSION = typeof __FLUXER_SW_VERSION__ === 'string' ? __FLUXER_SW_VERSION__ : 'dev';
const PRECACHE_MANIFEST = typeof __FLUXER_PRECACHE_MANIFEST__ === 'undefined' ? [] : __FLUXER_PRECACHE_MANIFEST__;
const PRECACHE_CACHE = `${WORKER_CACHE_PREFIX}-precache-${SERVICE_WORKER_VERSION}`;
const NAVIGATION_CACHE = `${WORKER_CACHE_PREFIX}-navigation-${SERVICE_WORKER_VERSION}`;
const NAVIGATION_CACHE = `${WORKER_NAVIGATION_CACHE_PREFIX}${SERVICE_WORKER_VERSION}`;
const EXPECTED_CACHES = new Set([PRECACHE_CACHE, NAVIGATION_CACHE]);
const NAVIGATION_NETWORK_TIMEOUT_MS = 650;
const serviceWorkerCaches = self.caches;
@@ -1,6 +1,7 @@
// SPDX-License-Identifier: AGPL-3.0-or-later
export const WORKER_CACHE_PREFIX = 'fluxer';
export const WORKER_NAVIGATION_CACHE_PREFIX = `${WORKER_CACHE_PREFIX}-navigation-`;
export function shouldDeleteWorkerCache(cacheName: string, expectedCaches: ReadonlySet<string>): boolean {
return cacheName.startsWith(`${WORKER_CACHE_PREFIX}-`) && !expectedCaches.has(cacheName);
@@ -1,13 +0,0 @@
/* SPDX-License-Identifier: AGPL-3.0-or-later */
.matureBlurred {
filter: blur(0.625rem);
cursor: pointer;
transition: filter 0.2s;
}
.matureStickerBlurred {
filter: blur(0.625rem);
cursor: pointer;
transition: filter 0.2s;
}
@@ -134,6 +134,13 @@ class ModalState {
};
}
releasePortalHost(host: HTMLElement): void {
if (!this.modals.some((modal) => modal.portalHost === host)) return;
this.modals = this.modals.map((modal) =>
modal.portalHost === host ? {...modal, portalHost: null, ownerDocument: this.resolveOwnerDocument(null)} : modal,
);
}
pop(key?: string | number, ownerDocument?: Document): void {
let removed: ModalEntry | undefined;
let wasTopmost = false;
@@ -331,19 +331,7 @@
}
.botPermissionList {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
@media (max-width: 1080px) {
.botPermissionList {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 720px) {
.botPermissionList {
grid-template-columns: 1fr;
}
grid-template-columns: repeat(auto-fill, minmax(min(100%, 16rem), 1fr));
}
.scopeItem {
@@ -354,9 +342,19 @@
min-width: 0;
}
.scopeCheckbox {
flex: 1 1 auto;
min-width: 0;
}
.scopeCheckbox > div,
.scopeCheckbox > div > div {
min-width: 0;
max-width: 100%;
}
.scopeLabel {
display: inline-flex;
align-items: center;
display: block;
min-width: 0;
overflow: hidden;
text-overflow: ellipsis;
@@ -117,6 +117,7 @@ export const OAuthBuilderSection: React.FC<OAuthBuilderSectionProps> = ({
checked={!!field.value}
onChange={(checked) => field.onChange(checked)}
size="small"
className={styles.scopeCheckbox}
data-flx="user.applications-tab.application-detail.o-auth-builder-section.checkbox.change"
>
<span
@@ -179,6 +180,7 @@ export const OAuthBuilderSection: React.FC<OAuthBuilderSectionProps> = ({
checked={!!field.value}
onChange={(checked) => field.onChange(checked)}
size="small"
className={styles.scopeCheckbox}
data-flx="user.applications-tab.application-detail.o-auth-builder-section.checkbox.change--2"
>
<span
@@ -8,13 +8,14 @@ import {APIErrorCodes} from '@fluxer/constants/src/ApiErrorCodes';
import {msg} from '@lingui/core/macro';
export const ACCOUNT_LIMITED_NOTICE_DESCRIPTOR = msg({
message: 'Your account is limited. Check your email for how to lift it.',
message: 'Messaging is paused on your account. Check your email for a quick step to continue.',
comment:
'Notice shown in place of the message composer, and as an error, when the current account is limited and cannot post, react, join communities or change its profile.',
'Notice shown in place of the message composer, and as an error, when messaging is paused on the current account until the user completes one quick step described in an email. While paused, the account cannot post, react, join communities or change its profile. Keep the tone calm and friendly.',
});
const ACCOUNT_LIMITED_TITLE_DESCRIPTOR = msg({
message: 'Your account is limited',
comment: 'Title of the error modal shown when an action fails because the current account is limited.',
message: 'Messaging is paused',
comment:
'Title of the error modal shown when an action fails because messaging is paused on the current account until the user completes one quick step described in an email. Keep the tone calm and friendly.',
});
export function showAccountLimitedModal(serverMessage?: string): void {
@@ -15,8 +15,10 @@ import {
type LinuxAudioSourceFilterOptions,
type LinuxAudioSourceItem,
linuxAudioSourceItemKey,
linuxAudioSourcePatternsEqual,
mapLinuxAudioNodeToItems,
uniqueLinuxAudioSourceItems,
withSelectedLinuxAudioSources,
} from '@app/features/voice/utils/LinuxAudioSourceRules';
import {
formatScreenShareAudioSummary,
@@ -78,15 +80,8 @@ const EMPTY_SNAPSHOT: AudioSourceSnapshot = {
error: null,
};
function nodesEqual(a: VirtmicNode, b: VirtmicNode): boolean {
const keysA = Object.keys(a);
const keysB = Object.keys(b);
if (keysA.length !== keysB.length) return false;
return keysA.every((key) => a[key] === b[key]);
}
function isItemSelected(value: VirtmicNode, sources: Array<VirtmicNode>): boolean {
return sources.some((source) => nodesEqual(source, value));
return sources.some((source) => linuxAudioSourcePatternsEqual(source, value));
}
async function fetchAudioSources(options: LinuxAudioSourceFilterOptions): Promise<AudioSourceSnapshot> {
@@ -188,7 +183,7 @@ export const AudioSourcePickerLinuxSubmenu = observer((props: AudioSourcePickerL
(item: LinuxAudioSourceItem) => {
const isSelected = isItemSelected(item.value, includeSources);
const nextSources = isSelected
? includeSources.filter((source) => !nodesEqual(source, item.value))
? includeSources.filter((source) => !linuxAudioSourcePatternsEqual(source, item.value))
: [...includeSources, item.value];
VoiceSettingsCommands.update({
screenShareAudioSourceMode: nextSources.length > 0 ? 'specific' : 'system',
@@ -203,7 +198,7 @@ export const AudioSourcePickerLinuxSubmenu = observer((props: AudioSourcePickerL
(item: LinuxAudioSourceItem) => {
const isSelected = isItemSelected(item.value, excludeSources);
const nextSources = isSelected
? excludeSources.filter((source) => !nodesEqual(source, item.value))
? excludeSources.filter((source) => !linuxAudioSourcePatternsEqual(source, item.value))
: [...excludeSources, item.value];
VoiceSettingsCommands.update({
screenShareAudioExcludeSources: nextSources,
@@ -230,6 +225,8 @@ export const AudioSourcePickerLinuxSubmenu = observer((props: AudioSourcePickerL
usesDeviceMicrophone,
});
const showsWideSourceLists = !offersWindowScope || resolvedScope === 'system';
const includeItems = withSelectedLinuxAudioSources(snapshot.items, includeSources);
const excludeItems = withSelectedLinuxAudioSources(snapshot.items, excludeSources);
const wideSourceIsSelected = isDeviceShare ? usesDeviceMicrophone : sourceMode === 'system';
if (!snapshot.available && !snapshot.loading) {
return null;
@@ -269,12 +266,12 @@ export const AudioSourcePickerLinuxSubmenu = observer((props: AudioSourcePickerL
</MenuItemRadio>
)}
</MenuGroup>
{showsWideSourceLists && snapshot.items.length > 0 && (
{showsWideSourceLists && includeItems.length > 0 && (
<MenuGroup data-flx="voice.audio-source-picker-linux.audio-source-picker-linux-submenu.menu-group--2">
<MenuGroupLabel data-flx="voice.audio-source-picker-linux.audio-source-picker-linux-submenu.group-label.include-apps">
{i18n._(INCLUDE_APPS_DESCRIPTOR)}
</MenuGroupLabel>
{snapshot.items.map((item) => (
{includeItems.map((item) => (
<CheckboxItem
key={linuxAudioSourceItemKey(item)}
checked={isItemSelected(item.value, includeSources)}
@@ -286,12 +283,12 @@ export const AudioSourcePickerLinuxSubmenu = observer((props: AudioSourcePickerL
))}
</MenuGroup>
)}
{!isDeviceShare && showsWideSourceLists && sourceMode === 'system' && snapshot.items.length > 0 && (
{!isDeviceShare && showsWideSourceLists && sourceMode === 'system' && excludeItems.length > 0 && (
<MenuGroup data-flx="voice.audio-source-picker-linux.audio-source-picker-linux-submenu.menu-group--3">
<MenuGroupLabel data-flx="voice.audio-source-picker-linux.audio-source-picker-linux-submenu.group-label.exclude-from-system">
{i18n._(EXCLUDE_FROM_SYSTEM_DESCRIPTOR)}
</MenuGroupLabel>
{snapshot.items.map((item) => (
{excludeItems.map((item) => (
<CheckboxItem
key={`exclude-${linuxAudioSourceItemKey(item)}`}
checked={isItemSelected(item.value, excludeSources)}
@@ -20,7 +20,7 @@ import {BottomSheet} from '@app/features/ui/bottom_sheet/BottomSheet';
import * as ToastCommands from '@app/features/ui/commands/ToastCommands';
import FocusRing from '@app/features/ui/focus_ring/FocusRing';
import {usePopout} from '@app/features/ui/hooks/usePopout';
import {PortalHostContext, setActivePortalHost} from '@app/features/ui/overlay/PortalHostContext';
import {PortalHostContext} from '@app/features/ui/overlay/PortalHostContext';
import {Popout as PopoverPopout} from '@app/features/ui/popover/PopoverPopout';
import ContextMenu, {isContextMenuNodeTarget} from '@app/features/ui/state/ContextMenu';
import KeyboardMode from '@app/features/ui/state/KeyboardMode';
@@ -40,7 +40,10 @@ import {StreamFocusHeaderInfo} from '@app/features/voice/components/StreamFocusH
import {getStreamKey} from '@app/features/voice/components/StreamKeys';
import {useStreamSpectators} from '@app/features/voice/components/useStreamSpectators';
import {useStreamTrackInfo} from '@app/features/voice/components/useStreamTrackInfo';
import {useVoiceCallAppFullscreen} from '@app/features/voice/components/useVoiceCallAppFullscreen';
import {
useVoiceCallAppFullscreen,
useVoiceCallFullscreenPortalHost,
} from '@app/features/voice/components/useVoiceCallAppFullscreen';
import {useVoiceCallTracksAndLayout} from '@app/features/voice/components/useVoiceCallTracksAndLayout';
import {useVoiceEngineConnectionState} from '@app/features/voice/components/useVoiceEngineConnectionState';
import {VoiceCallCornerControls} from '@app/features/voice/components/VoiceCallCornerControls';
@@ -422,14 +425,7 @@ const VoiceCallViewInner = observer(
}, [enterVoiceCallAppFullscreen, fullscreenRequestNonce]);
const inheritedPortalHost = useContext(PortalHostContext);
const effectivePortalHost = isVoiceCallAppFullscreen || inPopout ? portalHost : null;
useEffect(() => {
if (!isVoiceCallAppFullscreen) return;
if (!effectivePortalHost) return;
setActivePortalHost(effectivePortalHost);
return () => {
setActivePortalHost(null);
};
}, [isVoiceCallAppFullscreen, effectivePortalHost]);
useVoiceCallFullscreenPortalHost(isVoiceCallAppFullscreen, effectivePortalHost);
const FavoriteIcon = useMemo(() => {
const Icon = forwardRef<SVGSVGElement, React.ComponentProps<typeof StarIcon>>((props, ref) => (
<StarIcon
@@ -36,6 +36,7 @@ interface PopoutWindowProps {
onRestore: () => void;
onClosed: (windowGeneration: number) => void;
onWindowOpened?: (childWindow: Window, windowGeneration: number) => void;
existingWindow?: Window | null;
children: React.ReactNode;
}
@@ -82,6 +83,7 @@ export const PopoutWindow: React.FC<PopoutWindowProps> = ({
onRestore,
onClosed,
onWindowOpened,
existingWindow,
children,
}) => {
const [childState, setChildState] = useState<PopoutChildState | null>(null);
@@ -89,11 +91,14 @@ export const PopoutWindow: React.FC<PopoutWindowProps> = ({
const onWindowOpenedRef = useRef(onWindowOpened);
const initialSizeRef = useRef({width, height});
const initialTitleRef = useRef(title);
const initialWindowRef = useRef(existingWindow);
onClosedRef.current = onClosed;
onWindowOpenedRef.current = onWindowOpened;
useEffect(() => {
const features = `width=${initialSizeRef.current.width},height=${initialSizeRef.current.height}`;
const childWindow = window.open('about:blank', windowKey, features);
const adoptedWindow = initialWindowRef.current;
const childWindow =
adoptedWindow && !adoptedWindow.closed ? adoptedWindow : window.open('about:blank', windowKey, features);
if (!childWindow) {
logger.warn('Failed to open popout window', {windowKey});
onClosedRef.current(windowGeneration);
@@ -92,6 +92,7 @@ const VoicePopoutWindowRenderer = observer(function VoicePopoutWindowRenderer({
onRestore={handleRestore}
onClosed={handleClosed}
onWindowOpened={handleWindowOpened}
existingWindow={PopoutWindowManager.getChildWindow(key)}
data-flx="voice.voice-popout-host.popout-window"
>
<VoicePopoutScopeContext.Provider value={descriptor.kind}>
@@ -7,6 +7,8 @@ import {
supportsWebkitRequestFullscreen,
} from '@app/features/platform/types/Browser';
import {Logger} from '@app/features/platform/utils/AppLogger';
import {setActivePortalHost} from '@app/features/ui/overlay/PortalHostContext';
import Modal from '@app/features/ui/state/Modal';
import {VOICE_CALL_FULLSCREEN_ENABLED} from '@app/features/voice/components/VoiceCallFullscreenFeatureFlag';
import VoiceCallFullscreen from '@app/features/voice/state/VoiceCallFullscreen';
import type {ExtendedHTMLElement} from '@app/types/browser.d';
@@ -192,6 +194,18 @@ export function useVoiceCallAppFullscreen(options: UseVoiceCallAppFullscreenOpti
};
}
export function useVoiceCallFullscreenPortalHost(active: boolean, host: HTMLElement | null): void {
useEffect(() => {
if (!active) return;
if (!host) return;
setActivePortalHost(host);
return () => {
setActivePortalHost(null);
Modal.releasePortalHost(host);
};
}, [active, host]);
}
interface UseVoiceCallFullscreenViewStateOptions {
active: boolean;
scopeKey: string;
@@ -830,6 +830,7 @@ class MediaEngineFacade extends Store {
ToastCommands.createToast({
type: 'info',
children: this.i18n._(RECONNECT_SUCCEEDED_PICK_A_SCREEN_AGAIN_IF_YOU_DESCRIPTOR),
timeout: 5000,
});
}
}
@@ -57,12 +57,6 @@ export function isVoicePopoutAlwaysOnTopSupported(): boolean {
return typeof getElectronAPI()?.popoutSetAlwaysOnTop === 'function';
}
interface PopoutChildWindow {
closed: boolean;
focus: () => void;
close: () => void;
}
interface AlwaysOnTopOperationState {
readonly descriptor: VoicePopoutDescriptor;
desired: boolean;
@@ -71,7 +65,7 @@ interface AlwaysOnTopOperationState {
class PopoutWindowManagerStore {
popouts: Record<string, VoicePopoutDescriptor> = {};
alwaysOnTopKeys: Record<string, true> = {};
private readonly childWindows = new Map<string, PopoutChildWindow>();
private readonly childWindows = new Map<string, Window>();
private readonly alwaysOnTopOperations = new Map<string, AlwaysOnTopOperationState>();
private nextPopoutGeneration = 1;
@@ -110,6 +104,12 @@ class PopoutWindowManagerStore {
return null;
}
getChildWindow(key: string): Window | null {
const childWindow = this.childWindows.get(key);
if (!childWindow || childWindow.closed) return null;
return childWindow;
}
isOpen(key: string): boolean {
return key in this.popouts;
}
@@ -148,7 +148,7 @@ class PopoutWindowManagerStore {
}
}
attachWindow(key: string, generation: number, childWindow: PopoutChildWindow | null): void {
attachWindow(key: string, generation: number, childWindow: Window | null): void {
if (!this.isCurrentPopout(key, generation)) return;
if (childWindow === null) {
this.childWindows.delete(key);
@@ -24,7 +24,7 @@ import {
type ScreenShareCodecProfileEntry,
type ScreenShareCodecRanking,
} from '@app/features/voice/utils/ScreenShareCodecSelection';
import {normaliseStreamingModeForContext} from '@app/features/voice/utils/ScreenShareOptions';
import {isH264SoftwareClamped, normaliseStreamingModeForContext} from '@app/features/voice/utils/ScreenShareOptions';
import {getProbedVideoDecoderExclusionsSync} from '@app/features/voice/utils/VideoDecoderCapabilities';
import type {TrackPublishDefaults, TrackPublishOptions} from 'livekit-client';
import {BackupCodecPolicy, supportsVideoCodec, type VideoCodec, type VideoEncoding} from 'livekit-client';
@@ -410,6 +410,7 @@ export function buildScreenShareCodecProfile(): ScreenShareCodecProfile {
h265: entry('h265'),
av1: entry('av1'),
},
h264SoftwareClamped: isH264SoftwareClamped(),
};
}
@@ -135,6 +135,27 @@ export function mapLinuxAudioNodeToItems(
return items;
}
export function linuxAudioSourcePatternsEqual(a: VirtmicNode, b: VirtmicNode): boolean {
const keysA = Object.keys(a);
const keysB = Object.keys(b);
if (keysA.length !== keysB.length) return false;
return keysA.every((key) => a[key] === b[key]);
}
export function withSelectedLinuxAudioSources(
items: ReadonlyArray<LinuxAudioSourceItem>,
selected: ReadonlyArray<VirtmicNode>,
): Array<LinuxAudioSourceItem> {
const missing = selected.filter((source) => !items.some((item) => linuxAudioSourcePatternsEqual(item.value, source)));
return [
...items,
...missing.map((source) => ({
name: getLinuxAudioSourceDisplayName(source) ?? JSON.stringify(source),
value: source,
})),
];
}
export function uniqueLinuxAudioSourceItems(items: Array<LinuxAudioSourceItem>): Array<LinuxAudioSourceItem> {
const seen = new Set<string>();
const result: Array<LinuxAudioSourceItem> = [];
@@ -5,6 +5,7 @@ import type {VideoCodec} from 'livekit-client';
export const CODEC_PREFERENCE: ReadonlyArray<VideoCodec> = ['av1', 'h265', 'h264', 'vp9', 'vp8'];
const SOFTWARE_H264_CODEC_PREFERENCE: ReadonlyArray<VideoCodec> = ['av1', 'h265', 'vp9', 'h264', 'vp8'];
const CLAMPED_H264_CODEC_PREFERENCE: ReadonlyArray<VideoCodec> = ['av1', 'h265', 'vp9', 'vp8', 'h264'];
const GECKO_CODEC_PREFERENCE: ReadonlyArray<VideoCodec> = ['vp8', 'h264'];
const COMPATIBILITY_CODECS: ReadonlySet<VideoCodec> = new Set(['h264', 'vp9', 'vp8']);
export const LAST_RESORT_VIDEO_CODEC: VideoCodec = 'vp8';
@@ -79,6 +80,7 @@ export interface ScreenShareCodecProfile {
browser: ScreenShareCodecBrowser;
desktop: boolean;
codecs: Record<VideoCodec, ScreenShareCodecProfileEntry>;
h264SoftwareClamped?: boolean;
}
export interface ScreenShareCodecRankingInput {
@@ -94,7 +96,9 @@ export interface ScreenShareCodecRanking {
export function rankScreenShareCodecs(input: ScreenShareCodecRankingInput): ScreenShareCodecRanking {
const {codecs} = input.profile;
const isHardware = (codec: VideoCodec): boolean => codecs[codec].supported && codecs[codec].hardware;
const h264Clamped = input.profile.h264SoftwareClamped === true;
const isHardware = (codec: VideoCodec): boolean =>
codecs[codec].supported && codecs[codec].hardware && !(codec === 'h264' && h264Clamped);
const hardwareAvailable = CODEC_PREFERENCE.some((codec) => isHardware(codec));
const pin = input.pin !== 'auto' && codecs[input.pin].allowed && codecs[input.pin].supported ? input.pin : null;
const baselineOnly =
@@ -108,9 +112,11 @@ export function rankScreenShareCodecs(input: ScreenShareCodecRankingInput): Scre
const preference =
input.profile.browser === 'firefox'
? GECKO_CODEC_PREFERENCE
: isHardware('h264')
? CODEC_PREFERENCE
: SOFTWARE_H264_CODEC_PREFERENCE;
: h264Clamped
? CLAMPED_H264_CODEC_PREFERENCE
: isHardware('h264')
? CODEC_PREFERENCE
: SOFTWARE_H264_CODEC_PREFERENCE;
const survivors = preference.filter(survives);
const ranked =
input.encoderModeSetting === 'software'
@@ -330,11 +330,14 @@ export function resolveScreenShareDegradationPreference(
return 'maintain-framerate';
}
function shouldClampToSoftwareH264(codec: VideoCodec | undefined): boolean {
if (codec !== 'h264') return false;
export function isH264SoftwareClamped(): boolean {
return getH264HardwareProfilesSync()?.profiles.size === 0;
}
function shouldClampToSoftwareH264(codec: VideoCodec | undefined): boolean {
return codec === 'h264' && isH264SoftwareClamped();
}
function clampToSoftwareH264Budget(quality: {
mode: StreamingMode;
resolution: ScreenshareResolution;
@@ -134,7 +134,7 @@ You don't have access to this resource or feature
### `ACCOUNT_LIMITED`
Your account is limited
Messaging is paused on your account
### `ACCOUNT_SUSPENDED_PERMANENTLY`
@@ -730,6 +730,10 @@ The same conditions turn on a DNS check at registration. The check runs when ema
`.env.example` `Fluxer`. The sender name. Default `Fluxer`, which an empty value also gives. Compose forwards it from `.env`.
#### `FLUXER_EMAIL_REPLY_TO_EMAIL`
Default empty. The address replies go to, sent as the `Reply-To` header on every email. An empty value sends no `Reply-To` header. Must be a single bare address such as `[email protected]`, or the API fails at boot. The admin dashboard has no field for it. Compose forwards it from `.env`, and `.env.example` lists it commented out.
#### `FLUXER_EMAIL_APP_BASE_URL`
`.env.example` empty. The base URL used in links. Must be http or https with no username, password, query, or fragment, or the API fails at boot. Falls back to the app endpoint. Compose forwards it from `.env`.
@@ -1808,11 +1812,15 @@ Default `256mb`. The ceiling for `nats`. Covers JetStream file store metadata as
#### `FLUXER_MEILISEARCH_MEMORY_LIMIT`
Default `768mb`. The ceiling for `meilisearch`. Must stay well above `FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY`, which bounds the indexer alone.
Default `1536mb`. The ceiling for `meilisearch`. Indexing a backlog of a few hundred thousand messages with two indexing threads peaks near 1 GB, so keep this above 1 GB.
#### `FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY`
Default `384mb`. Becomes `MEILI_MAX_INDEXING_MEMORY`. The memory the indexer may use for one batch. Lower it whenever you lower `FLUXER_MEILISEARCH_MEMORY_LIMIT`.
Default `256mb`. Becomes `MEILI_MAX_INDEXING_MEMORY`. The memory the indexer may use for one batch. Meilisearch uses more than this while indexing, because every indexing thread also has buffers of its own. Lower it whenever you lower `FLUXER_MEILISEARCH_MEMORY_LIMIT`.
#### `FLUXER_MEILISEARCH_MAX_INDEXING_THREADS`
Default `2`. Becomes `MEILI_MAX_INDEXING_THREADS`. Without it Meilisearch indexes on half the host's CPU threads, and each thread can use up to 150 MB of buffers, so a host with many cores runs out of memory under a container limit that suits a small one. Raise it only together with `FLUXER_MEILISEARCH_MEMORY_LIMIT`.
#### `FLUXER_MEILISEARCH_ENV`
@@ -2034,8 +2042,8 @@ FLUXER_WORKER_MEMORY_LIMIT=1280mb
FLUXER_WORKER_MEMORY_RESERVATION=768mb
FLUXER_GATEWAY_MEMORY_LIMIT=512mb
FLUXER_GATEWAY_MEMORY_RESERVATION=256mb
FLUXER_MEILISEARCH_MEMORY_LIMIT=512mb
FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY=256mb
FLUXER_MEILISEARCH_MEMORY_LIMIT=1gb
FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY=192mb
FLUXER_SEAWEEDFS_MEMORY_LIMIT=1gb
FLUXER_SEAWEEDFS_GOMEMLIMIT=768MiB
FLUXER_GIFS_SHARD_CACHE_MAX_BYTES=134217728
@@ -2058,8 +2066,9 @@ FLUXER_WORKER_MEMORY_LIMIT=640mb
FLUXER_WORKER_MEMORY_RESERVATION=384mb
FLUXER_GATEWAY_MEMORY_LIMIT=384mb
FLUXER_GATEWAY_MEMORY_RESERVATION=192mb
FLUXER_MEILISEARCH_MEMORY_LIMIT=384mb
FLUXER_MEILISEARCH_MEMORY_LIMIT=1gb
FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY=128mb
FLUXER_MEILISEARCH_MAX_INDEXING_THREADS=1
FLUXER_MEDIA_PROXY_MEMORY_LIMIT=320mb
FLUXER_SEAWEEDFS_MEMORY_LIMIT=320mb
FLUXER_SEAWEEDFS_GOMEMLIMIT=240MiB
+12 -22
View File
@@ -253,8 +253,7 @@ async fn external_body_prefix(
prefix
.try_reserve_exact(EXTERNAL_SNIFF_PREFIX_BYTES)
.map_err(|_| ExternalFetchError::BufferAllocationFailed)?;
let mut chunks_read = 0_u64;
let chunks_max =
let mut empty_chunks_remaining =
response_body_limit::response_body_chunk_limit(constants::MAX_MEDIA_PROXY_BYTES as u64);
while prefix.len() < EXTERNAL_SNIFF_PREFIX_BYTES {
let Some(chunk) = response.chunk().await.map_err(|err| {
@@ -265,17 +264,13 @@ async fn external_body_prefix(
else {
break;
};
if chunk.len() > response_body_limit::RESPONSE_BODY_TRANSPORT_CHUNK_BYTES_MAX {
warn!(url = %url, "external response transport chunk exceeded its byte bound");
return Err(ExternalFetchError::PayloadTooLarge);
}
chunks_read = chunks_read
.checked_add(1)
.filter(|chunks| *chunks <= chunks_max)
.ok_or_else(|| {
warn!(url = %url, chunks_max, "external sniff prefix exceeded its chunk limit");
if chunk.is_empty() {
empty_chunks_remaining = empty_chunks_remaining.checked_sub(1).ok_or_else(|| {
warn!(url = %url, "external sniff prefix exceeded its empty chunk limit");
ExternalFetchError::PayloadTooLarge
})?;
continue;
}
prefix.extend_from_slice(&chunk);
}
Ok(Bytes::from(prefix))
@@ -370,24 +365,19 @@ pub(super) async fn buffer_external_response(
let mut reserved_bytes =
grow_to_capacity(&mut reservation, metrics, buf.capacity(), initial_capacity)?;
buf.extend_from_slice(&prefix);
let mut chunks_read = 0_u64;
let chunks_max = response_body_limit::response_body_chunk_limit(limit as u64);
let mut empty_chunks_remaining = response_body_limit::response_body_chunk_limit(limit as u64);
while let Some(chunk) = response.chunk().await.map_err(|err| {
warn!(url = %url, %err, "external body read failed");
metrics.record_fetch_failure();
ExternalFetchError::FetchFailed
})? {
if chunk.len() > response_body_limit::RESPONSE_BODY_TRANSPORT_CHUNK_BYTES_MAX {
warn!(url = %url, "external response transport chunk exceeded its byte bound");
return Err(ExternalFetchError::PayloadTooLarge);
}
chunks_read = chunks_read
.checked_add(1)
.filter(|chunks| *chunks <= chunks_max)
.ok_or_else(|| {
warn!(url = %url, chunks_max, "external payload exceeded its chunk limit");
if chunk.is_empty() {
empty_chunks_remaining = empty_chunks_remaining.checked_sub(1).ok_or_else(|| {
warn!(url = %url, "external payload exceeded its empty chunk limit");
ExternalFetchError::PayloadTooLarge
})?;
continue;
}
let Some(next_len) = buf
.len()
.checked_add(chunk.len())
+41
View File
@@ -929,3 +929,44 @@ async fn an_upstream_that_ignores_the_client_range_still_streams_a_complete_body
let body = to_bytes(response.into_body(), 64).await.unwrap();
assert_eq!(b"streamed bytes", body.as_ref());
}
#[tokio::test]
async fn external_buffering_accepts_transport_chunks_of_any_size_within_the_limit() {
const LARGE_CHUNK_BYTES: usize =
crate::response_body_limit::RESPONSE_BODY_TRANSPORT_CHUNK_BYTES_MAX + 155_648;
const SMALL_CHUNK_BYTES: usize = 1448;
const SMALL_CHUNKS: usize = 512;
let budget = ByteBudget::new(constants::MAX_MEDIA_PROXY_BYTES * 4);
let metrics = ExternalMetrics::new();
let buffer = |response: reqwest::Response, length: usize| {
buffer_external_response(ExternalBufferRequest {
response,
prefix: Bytes::new(),
url: "https://media.example.test/clip.webm",
budget: &budget,
metrics: &metrics,
content_length: Some(length as u64),
limit: constants::MAX_MEDIA_PROXY_BYTES,
})
};
let large = buffer(
reqwest::Response::from(http::Response::new(vec![7u8; LARGE_CHUNK_BYTES])),
LARGE_CHUNK_BYTES,
)
.await
.expect("a transport chunk larger than the reserved allowance");
assert_eq!(LARGE_CHUNK_BYTES, large.as_bytes().len());
let small_body = reqwest::Body::wrap_stream(futures_util::stream::iter(
(0..SMALL_CHUNKS)
.map(|_| Ok::<Bytes, std::io::Error>(Bytes::from(vec![9u8; SMALL_CHUNK_BYTES]))),
));
let small = buffer(
reqwest::Response::from(http::Response::new(small_body)),
SMALL_CHUNK_BYTES * SMALL_CHUNKS,
)
.await
.expect("packet-sized transport chunks");
assert_eq!(SMALL_CHUNK_BYTES * SMALL_CHUNKS, small.as_bytes().len());
}
@@ -80,22 +80,17 @@ pub(super) async fn read_response_bytes(
body.try_reserve_exact(expected_length)
.map_err(|_| StorageError::BufferAllocationFailed)?;
buffer_budget.grow_to(body.capacity())?;
let mut chunks_read = 0_u64;
let chunks_max = response_body_limit::response_body_chunk_limit(expected_length as u64);
let mut empty_chunks_remaining =
response_body_limit::response_body_chunk_limit(expected_length as u64);
while let Some(chunk) = response.chunk().await? {
if chunk.len() > response_body_limit::RESPONSE_BODY_TRANSPORT_CHUNK_BYTES_MAX {
return Err(StorageError::ObjectStorage(anyhow::anyhow!(
"object storage response transport chunk exceeded its byte bound"
)));
}
chunks_read = chunks_read
.checked_add(1)
.filter(|chunks| *chunks <= chunks_max)
.ok_or_else(|| {
if chunk.is_empty() {
empty_chunks_remaining = empty_chunks_remaining.checked_sub(1).ok_or_else(|| {
StorageError::ObjectStorage(anyhow::anyhow!(
"object storage response exceeded its chunk limit"
"object storage response exceeded its empty chunk limit"
))
})?;
continue;
}
let next_length = body
.len()
.checked_add(chunk.len())
@@ -282,3 +282,50 @@ async fn exact_stream_accepts_small_transport_chunks_and_bounds_empty_ones() {
.expect_err("empty chunk flood");
assert_eq!(error.kind(), std::io::ErrorKind::InvalidData);
}
fn chunked_provider_response(chunks: Vec<Bytes>) -> reqwest::Response {
let body = reqwest::Body::wrap_stream(stream::iter(
chunks.into_iter().map(Ok::<Bytes, std::io::Error>),
));
reqwest::Response::from(http::Response::new(body))
}
#[tokio::test]
async fn response_reader_accepts_transport_chunks_of_any_size_within_the_length() {
const LARGE_CHUNK_BYTES: usize =
crate::response_body_limit::RESPONSE_BODY_TRANSPORT_CHUNK_BYTES_MAX + 155_648;
let budget = ByteBudget::new(4 * LARGE_CHUNK_BYTES);
let large = read_response_bytes(
provider_response(vec![7u8; LARGE_CHUNK_BYTES]),
LARGE_CHUNK_BYTES,
&budget,
)
.await
.expect("a transport chunk larger than the reserved allowance");
assert_eq!(large.as_ref().len(), LARGE_CHUNK_BYTES);
const SMALL_CHUNK_BYTES: usize = 1448;
const SMALL_CHUNKS: usize = 512;
let small = read_response_bytes(
chunked_provider_response(
(0..SMALL_CHUNKS)
.map(|_| Bytes::from(vec![9u8; SMALL_CHUNK_BYTES]))
.collect(),
),
SMALL_CHUNK_BYTES * SMALL_CHUNKS,
&budget,
)
.await
.expect("packet-sized transport chunks");
assert_eq!(small.as_ref().len(), SMALL_CHUNK_BYTES * SMALL_CHUNKS);
assert!(matches!(
read_response_bytes(
chunked_provider_response((0..4096).map(|_| Bytes::new()).collect()),
4,
&budget,
)
.await,
Err(StorageError::ObjectStorage(_))
));
}
+8
View File
@@ -163,6 +163,7 @@ function defaultConfig(): MasterConfig {
provider: 'none',
from_email: '',
from_name: 'Fluxer',
reply_to_email: '',
app_base_url: '',
},
voice: {
@@ -292,6 +293,12 @@ function requireString(value: string | undefined, envName: string): void {
}
}
function validateReplyToEmail(value: string): void {
if (value !== '' && !/^[^\s@<>,;"]+@[^\s@<>,;"]+$/.test(value)) {
throw new Error('FLUXER_EMAIL_REPLY_TO_EMAIL must be a single email address such as [email protected]');
}
}
function validateUploadRelaySecret(value: string): void {
const trimmed = value.trim();
if (trimmed.length === 0) {
@@ -566,6 +573,7 @@ function normalizeConfig(config: MasterConfig): MasterConfig {
validateStorageChangeFeedConfig(config);
validateCachePurgeConfig(config);
validateStoreBillingConfig(config);
validateReplyToEmail(config.integrations.email.reply_to_email);
normalizeAppOriginAliases(config);
assertIntegerInRange(config.services.api.max_inflight_requests, 'FLUXER_API_MAX_INFLIGHT_REQUESTS', 1, 100_000);
assertIntegerInRange(config.services.api.headers_timeout_ms, 'FLUXER_API_HEADERS_TIMEOUT_MS', 1_000, 3_600_000);
+1
View File
@@ -169,6 +169,7 @@ export interface MasterConfig {
provider: 'smtp' | 'none';
from_email: string;
from_name: string;
reply_to_email: string;
app_base_url: string;
webhook_secret?: string;
smtp?: {
@@ -290,6 +290,30 @@ describe('ConfigLoader', () => {
expect(config.services.api.storage_change_feed?.skip_buckets).toBeUndefined();
});
test('reads the email reply-to address', async () => {
stubMinimalEnv({FLUXER_EMAIL_REPLY_TO_EMAIL: '[email protected]'});
const config = await loadConfig();
expect(config.integrations.email.reply_to_email).toBe('[email protected]');
});
test('leaves the email reply-to address empty when unset or blank', async () => {
stubMinimalEnv({FLUXER_EMAIL_REPLY_TO_EMAIL: ' '});
const config = await loadConfig();
expect(config.integrations.email.reply_to_email).toBe('');
});
test.each(['support', 'Support <[email protected]>', '[email protected],[email protected]', ' [email protected]'])(
'rejects %j as the email reply-to address',
async (value) => {
stubMinimalEnv({FLUXER_EMAIL_REPLY_TO_EMAIL: value});
await expect(loadConfig()).rejects.toThrow('FLUXER_EMAIL_REPLY_TO_EMAIL must be a single email address');
},
);
test('keeps explicit passkey relying party values', async () => {
stubMinimalEnv({
FLUXER_BASE_DOMAIN: 'chat.example.com',
@@ -52,6 +52,7 @@ describe('buildNamedFluxerEnvOverrides', () => {
FLUXER_S3_FORCE_PATH_STYLE: 'true',
FLUXER_AUTH_BLUESKY_KEYS: '[{"kid":"key-1","private_key_path":"/etc/fluxer/keys/bluesky.pem"}]',
FLUXER_STRIPE_PRICE_MONTHLY_USD: 'price_monthly_usd',
FLUXER_EMAIL_REPLY_TO_EMAIL: '[email protected]',
});
expect(overrides).toMatchObject({
@@ -62,7 +63,10 @@ describe('buildNamedFluxerEnvOverrides', () => {
bluesky: {keys: [{kid: 'key-1', private_key_path: '/etc/fluxer/keys/bluesky.pem'}]},
},
s3: {force_path_style: true},
integrations: {stripe: {prices: {monthly_usd: 'price_monthly_usd'}}},
integrations: {
stripe: {prices: {monthly_usd: 'price_monthly_usd'}},
email: {reply_to_email: '[email protected]'},
},
});
});
@@ -77,6 +81,7 @@ describe('buildNamedFluxerEnvOverrides', () => {
FLUXER_LIVEKIT_DEFAULT_REGION: blank,
FLUXER_AUTH_BLUESKY_KEYS: blank,
FLUXER_EMAIL_FROM_NAME: blank,
FLUXER_EMAIL_REPLY_TO_EMAIL: blank,
}),
).toEqual({});
});
@@ -48,6 +48,7 @@ const INPUT_NAMES: Record<string, string> = {
MEILI_ENV: 'FLUXER_MEILISEARCH_ENV',
MEILI_NO_ANALYTICS: 'FLUXER_MEILISEARCH_NO_ANALYTICS',
MEILI_MAX_INDEXING_MEMORY: 'FLUXER_MEILISEARCH_MAX_INDEXING_MEMORY',
MEILI_MAX_INDEXING_THREADS: 'FLUXER_MEILISEARCH_MAX_INDEXING_THREADS',
GOMEMLIMIT: 'FLUXER_SEAWEEDFS_GOMEMLIMIT',
WEED_MASTER_VOLUME_GROWTH_COPY_1: 'FLUXER_SEAWEEDFS_VOLUME_GROWTH',
LIVEKIT_KEYS: 'LIVEKIT_API_KEY',
@@ -148,6 +148,7 @@ const NAMED_FLUXER_ENV_OVERRIDES: Record<string, NamedEnvOverride> = {
FLUXER_EMAIL_PROVIDER: {path: ['integrations', 'email', 'provider']},
FLUXER_EMAIL_FROM_EMAIL: {path: ['integrations', 'email', 'from_email']},
FLUXER_EMAIL_FROM_NAME: {path: ['integrations', 'email', 'from_name']},
FLUXER_EMAIL_REPLY_TO_EMAIL: {path: ['integrations', 'email', 'reply_to_email']},
FLUXER_EMAIL_APP_BASE_URL: {path: ['integrations', 'email', 'app_base_url']},
FLUXER_EMAIL_WEBHOOK_SECRET: {path: ['integrations', 'email', 'webhook_secret']},
FLUXER_EMAIL_SMTP_HOST: {path: ['integrations', 'email', 'smtp', 'host']},
+1 -1
View File
@@ -143,7 +143,7 @@ describe('ErrorI18n', () => {
describe('account limited message', () => {
it('resolves ACCOUNT_LIMITED to its own message', () => {
expect(getErrorMessageUnsafe('ACCOUNT_LIMITED', 'en-US')).toBe(
'Your account is limited. Check your email for how to lift it.',
'Messaging is paused on your account. Check your email for a quick step to continue.',
);
expect(consoleWarnSpy).not.toHaveBeenCalled();
});

Some files were not shown because too many files have changed in this diff Show More