diff --git a/apps/api/src/app/alerts/common/alert-notifier.registry.ts b/apps/api/src/app/alerts/common/alert-notifier.registry.ts index 4fd1eb85..ba78ce6e 100644 --- a/apps/api/src/app/alerts/common/alert-notifier.registry.ts +++ b/apps/api/src/app/alerts/common/alert-notifier.registry.ts @@ -1,4 +1,5 @@ import { Injectable } from '@nestjs/common'; +import { SupportedLanguage } from '../../../common/utils/language.util'; import { TelegramService } from '../../telegram/telegram.service'; import { TelegramKeyboardBuilderService } from '../../telegram/telegram-keyboard-builder.service'; import { AlertEventSeverity, AlertEventType } from '../../../entities/alert-event.entity'; @@ -15,7 +16,7 @@ export interface AlertNotifierPayload { type TelegramNotifier = ( payload: AlertNotifierPayload, - userLanguage: 'en' | 'fr' + userLanguage: SupportedLanguage ) => Promise; @Injectable() @@ -32,7 +33,7 @@ export class AlertNotifierRegistry { ]); } - public async notify(payload: AlertNotifierPayload, userLanguage: 'en' | 'fr'): Promise { + public async notify(payload: AlertNotifierPayload, userLanguage: SupportedLanguage): Promise { const notifier = this.notifiers.get(payload.type); if (!notifier) { @@ -49,12 +50,12 @@ export class AlertNotifierRegistry { }; } - private async notifySentry(payload: AlertNotifierPayload, userLanguage: 'en' | 'fr'): Promise { + private async notifySentry(payload: AlertNotifierPayload, userLanguage: SupportedLanguage): Promise { const keyboard = this.keyboardBuilder.buildSentryAlertKeyboard(payload.userId, userLanguage); await this.telegramService.sendSentryAlert(payload.userId, this.buildAlertInfo(payload), userLanguage, keyboard, false); } - private async notifyBreakIn(payload: AlertNotifierPayload, userLanguage: 'en' | 'fr'): Promise { + private async notifyBreakIn(payload: AlertNotifierPayload, userLanguage: SupportedLanguage): Promise { const keyboard = this.keyboardBuilder.buildBreakInAlertKeyboard(payload.userId, userLanguage); await this.telegramService.sendBreakInAlert(payload.userId, this.buildAlertInfo(payload), userLanguage, keyboard, false); } diff --git a/apps/api/src/app/alerts/common/vehicle-alert-notifier.service.ts b/apps/api/src/app/alerts/common/vehicle-alert-notifier.service.ts index c51a6c69..816f2f72 100644 --- a/apps/api/src/app/alerts/common/vehicle-alert-notifier.service.ts +++ b/apps/api/src/app/alerts/common/vehicle-alert-notifier.service.ts @@ -11,6 +11,7 @@ import { AlertEventSeverity, AlertEventType } from '../../../entities/alert-even import { AlertsService } from '../alerts.service'; import { NotificationsService } from '../../notifications/notifications.service'; import { NotificationQueueService } from '../../notifications/notification-queue.service'; +import { SupportedLanguage } from '../../../common/utils/language.util'; import { AlertNotifierPayload, AlertNotifierRegistry } from './alert-notifier.registry'; import { NOTIFICATION_SWEEP_MAX_ATTEMPTS } from '../../../config/notification-sweep-cron.config'; @@ -183,7 +184,7 @@ export class VehicleAlertNotifierService { } } - private async deliverNotifications(payload: AlertNotifierPayload, userLanguage: 'en' | 'fr'): Promise { + private async deliverNotifications(payload: AlertNotifierPayload, userLanguage: SupportedLanguage): Promise { const [pushResult, telegramResult] = await Promise.allSettled([ this.notificationsService.sendPushAlert(payload.userId, payload.severity, payload.type, userLanguage, payload.correlationId), this.sendTelegramNotification(payload, userLanguage), @@ -197,7 +198,7 @@ export class VehicleAlertNotifierService { } } - private async sendTelegramNotification(payload: AlertNotifierPayload, userLanguage: 'en' | 'fr'): Promise { + private async sendTelegramNotification(payload: AlertNotifierPayload, userLanguage: SupportedLanguage): Promise { if (!(await this.notificationsService.shouldSendTelegram(payload.userId, payload.severity))) { return false; } diff --git a/apps/api/src/app/auth/interfaces/oauth-provider.requirements.ts b/apps/api/src/app/auth/interfaces/oauth-provider.requirements.ts index 7783f366..a8733299 100644 --- a/apps/api/src/app/auth/interfaces/oauth-provider.requirements.ts +++ b/apps/api/src/app/auth/interfaces/oauth-provider.requirements.ts @@ -1,3 +1,5 @@ +import { SupportedLanguage } from '../../../common/utils/language.util'; + export const oauthProviderRequirementsSymbol = Symbol('OAuthProviderRequirements'); export interface OAuthUserProfile { @@ -16,13 +18,13 @@ export interface OAuthAuthenticationResult { mobileRedirectUri?: string; tokens: OAuthTokensResponse; profile: OAuthUserProfile; - userLocale: 'en' | 'fr'; + userLocale: SupportedLanguage; } export interface OAuthProviderRequirements { - generateLoginUrl(userLocale: 'en' | 'fr', mobileRedirectUri?: string): { url: string; state: string }; + generateLoginUrl(userLocale: SupportedLanguage, mobileRedirectUri?: string): { url: string; state: string }; generateScopeChangeUrl( - userLocale: 'en' | 'fr', + userLocale: SupportedLanguage, missingScopes?: string[], mobileRedirectUri?: string ): { url: string; state: string }; diff --git a/apps/api/src/app/auth/services/tesla-oauth.service.ts b/apps/api/src/app/auth/services/tesla-oauth.service.ts index e7d8bbc4..dcfc14d9 100644 --- a/apps/api/src/app/auth/services/tesla-oauth.service.ts +++ b/apps/api/src/app/auth/services/tesla-oauth.service.ts @@ -10,7 +10,10 @@ import * as crypto from 'crypto'; import * as https from 'https'; import { decode } from 'jsonwebtoken'; import { TeslaScopes } from '@sentryguard/beta-domain'; -import { normalizeTeslaLocale } from '../../../common/utils/language.util'; +import { + normalizeTeslaLocale, + SupportedLanguage, +} from '../../../common/utils/language.util'; import { MissingPermissionsException } from '../../../common/exceptions/missing-permissions.exception'; import { OAuthProviderRequirements, @@ -22,7 +25,7 @@ import { interface StatePayload { mobileRedirectUri?: string; type: 'oauth_state'; - userLocale: 'en' | 'fr'; + userLocale: SupportedLanguage; nonce: string; } @@ -62,7 +65,7 @@ export class TeslaOAuthService implements OAuthProviderRequirements, OnModuleIni } generateLoginUrl( - userLocale: 'en' | 'fr' = 'en', + userLocale: SupportedLanguage = 'en', mobileRedirectUri?: string ): { url: string; state: string } { const clientId = process.env.TESLA_CLIENT_ID; @@ -90,7 +93,7 @@ export class TeslaOAuthService implements OAuthProviderRequirements, OnModuleIni } generateScopeChangeUrl( - userLocale: 'en' | 'fr' = 'en', + userLocale: SupportedLanguage = 'en', missingScopes?: TeslaScopes[], mobileRedirectUri?: string ): { url: string; state: string } { @@ -149,7 +152,7 @@ export class TeslaOAuthService implements OAuthProviderRequirements, OnModuleIni } } - private validateOAuthState(state: string): { mobileRedirectUri?: string; userLocale: 'en' | 'fr' } { + private validateOAuthState(state: string): { mobileRedirectUri?: string; userLocale: SupportedLanguage } { try { const secret = process.env.JWT_OAUTH_STATE_SECRET; @@ -268,7 +271,7 @@ export class TeslaOAuthService implements OAuthProviderRequirements, OnModuleIni } } - private createSignedState(userLocale: 'en' | 'fr', mobileRedirectUri?: string): string { + private createSignedState(userLocale: SupportedLanguage, mobileRedirectUri?: string): string { const payload: StatePayload = { mobileRedirectUri: this.resolveMobileRedirectUri(mobileRedirectUri), type: 'oauth_state', diff --git a/apps/api/src/app/auth/services/user-registration.service.ts b/apps/api/src/app/auth/services/user-registration.service.ts index 1e8b4efa..d3a59803 100644 --- a/apps/api/src/app/auth/services/user-registration.service.ts +++ b/apps/api/src/app/auth/services/user-registration.service.ts @@ -4,6 +4,7 @@ import { Repository } from 'typeorm'; import * as crypto from 'crypto'; import { User } from '../../../entities/user.entity'; import { encrypt } from '../../../common/utils/crypto.util'; +import { SupportedLanguage } from '../../../common/utils/language.util'; import { UserNotApprovedException } from '../../../common/exceptions/user-not-approved.exception'; import type { WaitlistServiceRequirements } from '../../waitlist/interfaces/waitlist-service.requirements'; import { waitlistServiceRequirementsSymbol } from '../../waitlist/interfaces/waitlist-service.requirements'; @@ -27,7 +28,7 @@ export class UserRegistrationService { async createOrUpdateUser( tokens: OAuthTokensResponse, profile: OAuthUserProfile, - userLocale: 'en' | 'fr' + userLocale: SupportedLanguage ): Promise { const encryptedAccessToken = encrypt(tokens.access_token); const encryptedRefreshToken = encrypt(tokens.refresh_token); @@ -61,7 +62,7 @@ export class UserRegistrationService { private async verifyWaitlistApproval( profile: OAuthUserProfile, - userLocale: 'en' | 'fr' + userLocale: SupportedLanguage ): Promise { if (!profile.email) { return; @@ -114,7 +115,7 @@ export class UserRegistrationService { profile: OAuthUserProfile, encryptedAccessToken: string, encryptedRefreshToken: string, - userLocale: 'en' | 'fr' + userLocale: SupportedLanguage ): Promise { const userId = crypto.randomBytes(16).toString('hex'); diff --git a/apps/api/src/app/notifications/notifications.service.ts b/apps/api/src/app/notifications/notifications.service.ts index 726934c2..73d391e3 100644 --- a/apps/api/src/app/notifications/notifications.service.ts +++ b/apps/api/src/app/notifications/notifications.service.ts @@ -6,6 +6,7 @@ import { NotificationPreferences } from '../../entities/notification-preferences import { PushDeviceToken } from '../../entities/push-device-token.entity'; import { AlertEventSeverity, AlertEventType } from '../../entities/alert-event.entity'; import i18n from '../../i18n'; +import { SupportedLanguage } from '../../common/utils/language.util'; import { NOTIFICATION_REQUEST_TIMEOUT_MS } from '../../config/notification-timeout.config'; import { withTimeout } from '../../common/utils/with-timeout.util'; @@ -94,7 +95,7 @@ export class NotificationsService { userId: string, severity: AlertEventSeverity, type: AlertEventType, - userLanguage: 'en' | 'fr', + userLanguage: SupportedLanguage, correlationId?: string ): Promise { const eligibleDevices = await this.findEligibleDevices(userId, severity); @@ -120,7 +121,7 @@ export class NotificationsService { severity: AlertEventSeverity, type: AlertEventType, userId: string, - userLanguage: 'en' | 'fr', + userLanguage: SupportedLanguage, correlationId?: string ): Promise { const { body, title } = this.resolveAlertTexts(type, userLanguage); @@ -138,7 +139,7 @@ export class NotificationsService { } } - private resolveAlertTexts(type: AlertEventType, lng: 'en' | 'fr'): { body: string; title: string } { + private resolveAlertTexts(type: AlertEventType, lng: SupportedLanguage): { body: string; title: string } { if (type === AlertEventType.BreakIn) { return { body: i18n.t('A break-in attempt was detected.', { lng }), @@ -232,7 +233,7 @@ export class NotificationsService { type: AlertEventType, criticalAlertsEnabled: boolean, userId: string, - userLanguage: 'en' | 'fr', + userLanguage: SupportedLanguage, correlationId?: string ): Promise { try { @@ -266,7 +267,7 @@ export class NotificationsService { type: AlertEventType, criticalAlertsEnabled: boolean, userId: string, - userLanguage: 'en' | 'fr' + userLanguage: SupportedLanguage ): object { const isPriorityAlert = criticalAlertsEnabled && this.shouldUsePriorityChannel(severity, type); const channelId = isPriorityAlert ? 'sentryguard-critical-alerts-v5' : 'sentryguard-alerts'; @@ -293,7 +294,7 @@ export class NotificationsService { return severity === AlertEventSeverity.Critical || type === AlertEventType.Sentry; } - private buildTeslaRedirectUrl(userId: string, userLanguage: 'en' | 'fr'): string { + private buildTeslaRedirectUrl(userId: string, userLanguage: SupportedLanguage): string { const baseUrl = process.env.TELEGRAM_WEBHOOK_BASE || 'http://localhost:3000'; return `${baseUrl}/redirect/tesla-app?userId=${encodeURIComponent(userId)}&lang=${userLanguage}`; } diff --git a/apps/api/src/app/telegram/telegram-account-linking.service.ts b/apps/api/src/app/telegram/telegram-account-linking.service.ts index d221a251..1f6ccfa9 100644 --- a/apps/api/src/app/telegram/telegram-account-linking.service.ts +++ b/apps/api/src/app/telegram/telegram-account-linking.service.ts @@ -2,6 +2,7 @@ import { Injectable, Logger, OnModuleInit } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import * as crypto from 'crypto'; +import { SupportedLanguage } from '../../common/utils/language.util'; import { Context } from 'telegraf'; import i18n from '../../i18n'; import { TelegramConfig, TelegramLinkStatus } from '../../entities/telegram-config.entity'; @@ -87,13 +88,13 @@ export class TelegramAccountLinkingService implements OnModuleInit { }); } - private async getLanguageForConfig(config: TelegramConfig | null): Promise<'en' | 'fr'> { + private async getLanguageForConfig(config: TelegramConfig | null): Promise { return config ? await this.userLanguageService.getUserLanguage(config.userId) : 'en'; } - private async handleExpiredToken(ctx: Context, config: TelegramConfig, lng: 'en' | 'fr'): Promise { + private async handleExpiredToken(ctx: Context, config: TelegramConfig, lng: SupportedLanguage): Promise { if (config.expires_at && new Date() > config.expires_at) { config.status = TelegramLinkStatus.EXPIRED; await this.telegramConfigRepository.save(config); @@ -103,7 +104,7 @@ export class TelegramAccountLinkingService implements OnModuleInit { return false; } - private async linkAccountToChat(ctx: Context, config: TelegramConfig, lng: 'en' | 'fr'): Promise { + private async linkAccountToChat(ctx: Context, config: TelegramConfig, lng: SupportedLanguage): Promise { const chatId = ctx.chat?.id?.toString(); if (!chatId) { this.logger.warn('⚠️ chatId missing in Telegram update'); @@ -132,7 +133,7 @@ export class TelegramAccountLinkingService implements OnModuleInit { this.logger.log(`✅ Account linked: userId=${config.userId}, chatId=${chatId}`); } - private async sendLinkSuccessMessages(ctx: Context, lng: 'en' | 'fr', isSetupComplete: boolean): Promise { + private async sendLinkSuccessMessages(ctx: Context, lng: SupportedLanguage, isSetupComplete: boolean): Promise { const mainMenuKeyboard = this.keyboardBuilderService.buildMainMenuKeyboard(lng); if (isSetupComplete) { diff --git a/apps/api/src/app/telegram/telegram-bot-update.service.ts b/apps/api/src/app/telegram/telegram-bot-update.service.ts index d0e55d85..e1bb0f7b 100644 --- a/apps/api/src/app/telegram/telegram-bot-update.service.ts +++ b/apps/api/src/app/telegram/telegram-bot-update.service.ts @@ -2,6 +2,7 @@ import { Injectable, Logger } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import i18n from '../../i18n'; +import { SupportedLanguage } from '../../common/utils/language.util'; import { TelegramConfig, TelegramLinkStatus } from '../../entities/telegram-config.entity'; import { TelegramBotService } from './telegram-bot.service'; import { TelegramKeyboardBuilderService } from './telegram-keyboard-builder.service'; @@ -18,7 +19,7 @@ export class TelegramBotUpdateService { private readonly keyboardBuilderService: TelegramKeyboardBuilderService, ) {} - async ensureUserIsUpToDate(userId: string, chatId: string, lng: 'en' | 'fr'): Promise { + async ensureUserIsUpToDate(userId: string, chatId: string, lng: SupportedLanguage): Promise { const config = await this.telegramConfigRepository.findOne({ where: { userId, status: TelegramLinkStatus.LINKED }, }); diff --git a/apps/api/src/app/telegram/telegram-context.service.ts b/apps/api/src/app/telegram/telegram-context.service.ts index 1f76c474..bc071369 100644 --- a/apps/api/src/app/telegram/telegram-context.service.ts +++ b/apps/api/src/app/telegram/telegram-context.service.ts @@ -3,6 +3,7 @@ import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { TelegramConfig, TelegramLinkStatus } from '../../entities/telegram-config.entity'; import { UserLanguageService } from '../user/user-language.service'; +import { SupportedLanguage } from '../../common/utils/language.util'; @Injectable() export class TelegramContextService { @@ -22,7 +23,7 @@ export class TelegramContextService { return config?.chat_id ?? null; } - async getUserLanguageFromChatId(chatId: string): Promise<'en' | 'fr'> { + async getUserLanguageFromChatId(chatId: string): Promise { try { const config = await this.telegramConfigRepository.findOne({ where: { chat_id: chatId, status: TelegramLinkStatus.LINKED }, diff --git a/apps/api/src/app/telegram/telegram-keyboard-builder.service.ts b/apps/api/src/app/telegram/telegram-keyboard-builder.service.ts index aed16281..6d153e78 100644 --- a/apps/api/src/app/telegram/telegram-keyboard-builder.service.ts +++ b/apps/api/src/app/telegram/telegram-keyboard-builder.service.ts @@ -1,5 +1,6 @@ import { Injectable } from '@nestjs/common'; import i18n from '../../i18n'; +import { SupportedLanguage } from '../../common/utils/language.util'; import { TelegramMessageOptions } from './telegram.types'; @Injectable() @@ -7,7 +8,7 @@ export class TelegramKeyboardBuilderService { buildSentryAlertKeyboard( userId: string, - userLanguage: 'en' | 'fr' + userLanguage: SupportedLanguage ) { const baseUrl = process.env.TELEGRAM_WEBHOOK_BASE || 'http://localhost:3000'; const redirectUrl = `${baseUrl}/redirect/tesla-app?userId=${userId}&lang=${userLanguage}`; @@ -26,12 +27,12 @@ export class TelegramKeyboardBuilderService { buildBreakInAlertKeyboard( userId: string, - userLanguage: 'en' | 'fr' + userLanguage: SupportedLanguage ) { return this.buildSentryAlertKeyboard(userId, userLanguage); } - buildMainMenuKeyboard(lng: 'en' | 'fr', mutedUntil: Date | null | undefined = null): TelegramMessageOptions { + buildMainMenuKeyboard(lng: SupportedLanguage, mutedUntil: Date | null | undefined = null): TelegramMessageOptions { const isMuted = mutedUntil != null && new Date() < mutedUntil; const muteButtonKey = isMuted ? 'menuButtonMuteActive' : 'menuButtonMute'; @@ -46,7 +47,7 @@ export class TelegramKeyboardBuilderService { }; } - buildMuteActiveKeyboard(lng: 'en' | 'fr'): TelegramMessageOptions { + buildMuteActiveKeyboard(lng: SupportedLanguage): TelegramMessageOptions { return { keyboard: { inline_keyboard: [ diff --git a/apps/api/src/app/telegram/telegram-mute.service.ts b/apps/api/src/app/telegram/telegram-mute.service.ts index 899828a7..8a62441b 100644 --- a/apps/api/src/app/telegram/telegram-mute.service.ts +++ b/apps/api/src/app/telegram/telegram-mute.service.ts @@ -3,6 +3,7 @@ import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { Context } from 'telegraf'; import i18n from '../../i18n'; +import { SupportedLanguage } from '../../common/utils/language.util'; import { TelegramConfig, TelegramLinkStatus } from '../../entities/telegram-config.entity'; import { TelegramBotService } from './telegram-bot.service'; import { TelegramKeyboardBuilderService } from './telegram-keyboard-builder.service'; @@ -143,7 +144,7 @@ export class TelegramMuteService implements OnModuleInit { ); } - private async confirmMute(ctx: Context, mutedUntil: Date, lng: 'en' | 'fr'): Promise { + private async confirmMute(ctx: Context, mutedUntil: Date, lng: SupportedLanguage): Promise { const confirmation = i18n.t('muteConfirmed', { lng, duration: TelegramMessageHelper.formatRemainingTime(mutedUntil) }); await ctx.answerCbQuery(); await ctx.deleteMessage(); diff --git a/apps/api/src/app/telegram/telegram-status.service.ts b/apps/api/src/app/telegram/telegram-status.service.ts index 9ac318d4..bd433950 100644 --- a/apps/api/src/app/telegram/telegram-status.service.ts +++ b/apps/api/src/app/telegram/telegram-status.service.ts @@ -3,6 +3,7 @@ import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { Context } from 'telegraf'; import i18n from '../../i18n'; +import { SupportedLanguage } from '../../common/utils/language.util'; import { TelegramConfig, TelegramLinkStatus } from '../../entities/telegram-config.entity'; import { Vehicle } from '../../entities/vehicle.entity'; import { TelegramBotService } from './telegram-bot.service'; @@ -61,7 +62,7 @@ export class TelegramStatusService implements OnModuleInit { await ctx.reply(i18n.t('Available commands', { lng })); } - private buildConfigurationStatusMessage(config: TelegramConfig, vehicles: Vehicle[], lng: 'en' | 'fr'): string { + private buildConfigurationStatusMessage(config: TelegramConfig, vehicles: Vehicle[], lng: SupportedLanguage): string { return [ i18n.t('configStatusTitle', { lng }), '', @@ -71,7 +72,7 @@ export class TelegramStatusService implements OnModuleInit { ].join('\n'); } - private buildTelegramSection(config: TelegramConfig, lng: 'en' | 'fr'): string { + private buildTelegramSection(config: TelegramConfig, lng: SupportedLanguage): string { const locale = lng === 'fr' ? 'fr-FR' : 'en-GB'; const date = config.linked_at ? config.linked_at.toLocaleDateString(locale, { day: 'numeric', month: 'long', year: 'numeric' }) @@ -88,7 +89,7 @@ export class TelegramStatusService implements OnModuleInit { return lines.join('\n'); } - private buildVehiclesSection(vehicles: Vehicle[], lng: 'en' | 'fr'): string { + private buildVehiclesSection(vehicles: Vehicle[], lng: SupportedLanguage): string { const header = i18n.t('configStatusVehicles', { lng }); if (vehicles.length === 0) { @@ -98,7 +99,7 @@ export class TelegramStatusService implements OnModuleInit { return [header, ...vehicles.map((vehicle) => this.buildVehicleLine(vehicle, lng))].join('\n'); } - private buildVehicleLine(vehicle: Vehicle, lng: 'en' | 'fr'): string { + private buildVehicleLine(vehicle: Vehicle, lng: SupportedLanguage): string { const name = vehicle.display_name || vehicle.vin; const telemetryKey = vehicle.sentry_mode_monitoring_enabled ? 'configStatusTelemetryActive' : 'configStatusTelemetryInactive'; diff --git a/apps/api/src/app/telegram/telegram.controller.ts b/apps/api/src/app/telegram/telegram.controller.ts index 16278101..685e7e02 100644 --- a/apps/api/src/app/telegram/telegram.controller.ts +++ b/apps/api/src/app/telegram/telegram.controller.ts @@ -25,6 +25,7 @@ import { ConsentGuard } from '../../common/guards/consent.guard'; import { CurrentUser } from '../auth/current-user.decorator'; import { User } from '../../entities/user.entity'; import i18n from '../../i18n'; +import { SupportedLanguage } from '../../common/utils/language.util'; import { ThrottleOptions } from '../../config/throttle.config'; @Controller('telegram') @@ -180,7 +181,7 @@ export class TelegramController { @Post('test-message') async sendTestMessage(@CurrentUser() user: User) { const userId = user.userId; - const lng = (user.preferred_language ?? 'en') as 'en' | 'fr'; + const lng = (user.preferred_language ?? 'en') as SupportedLanguage; const message = i18n.t('🧪 Test message from SentryGuard API', { lng }); this.logger.log(`📤 Sending test message to: ${userId} (${user.email})`); diff --git a/apps/api/src/app/telegram/telegram.service.ts b/apps/api/src/app/telegram/telegram.service.ts index 8b80047d..70ca75c9 100644 --- a/apps/api/src/app/telegram/telegram.service.ts +++ b/apps/api/src/app/telegram/telegram.service.ts @@ -1,6 +1,7 @@ import { Inject, Injectable, Logger, OnModuleDestroy } from '@nestjs/common'; import { TelegramError } from 'telegraf'; import i18n from '../../i18n'; +import { SupportedLanguage } from '../../common/utils/language.util'; import { TelegramBotService } from './telegram-bot.service'; import { TelegramMuteService } from './telegram-mute.service'; import { TelegramContextService } from './telegram-context.service'; @@ -35,7 +36,7 @@ export class TelegramService implements OnModuleDestroy { async sendSentryAlert( userId: string, alertInfo: { vin: string, display_name?: string }, - userLanguage: 'en' | 'fr', + userLanguage: SupportedLanguage, keyboard?: TelegramKeyboard, shouldScheduleRetry = true, ) { @@ -111,7 +112,7 @@ export class TelegramService implements OnModuleDestroy { async sendBreakInAlert( userId: string, alertInfo: { vin: string, display_name?: string }, - userLanguage: 'en' | 'fr', + userLanguage: SupportedLanguage, keyboard?: TelegramKeyboard, shouldScheduleRetry = true, ) { @@ -232,7 +233,7 @@ export class TelegramService implements OnModuleDestroy { private formatSentryAlertMessage( { display_name, vin }: { vin: string, display_name?: string }, - lng: 'en' | 'fr' + lng: SupportedLanguage ): string { return ` 🚨 ${i18n.t('TESLA SENTRY ALERT', { lng })} 🚨 @@ -245,7 +246,7 @@ export class TelegramService implements OnModuleDestroy { private formatBreakInAlertMessage( { display_name, vin }: { vin: string, display_name?: string }, - lng: 'en' | 'fr' + lng: SupportedLanguage ): string { return ` 🚨 ${i18n.t('TESLA BREAK-IN ALERT', { lng })} 🚨 diff --git a/apps/api/src/app/user/user-language.service.ts b/apps/api/src/app/user/user-language.service.ts index 3f8ea9c1..8e19fc86 100644 --- a/apps/api/src/app/user/user-language.service.ts +++ b/apps/api/src/app/user/user-language.service.ts @@ -2,6 +2,7 @@ import { Injectable, Logger } from '@nestjs/common'; import { InjectRepository } from '@nestjs/typeorm'; import { Repository } from 'typeorm'; import { User } from '../../entities/user.entity'; +import { SupportedLanguage } from '../../common/utils/language.util'; @Injectable() export class UserLanguageService { @@ -11,7 +12,7 @@ export class UserLanguageService { private readonly userRepository: Repository ) {} - async getUserLanguage(userId: string): Promise<'en' | 'fr'> { + async getUserLanguage(userId: string): Promise { const dbStart = Date.now(); const user = await this.userRepository.findOne({ where: { userId }, @@ -27,12 +28,12 @@ export class UserLanguageService { return 'en'; } - return user.preferred_language as 'en' | 'fr'; + return user.preferred_language as SupportedLanguage; } async updateUserLanguage( userId: string, - language: 'en' | 'fr' + language: SupportedLanguage ): Promise { await this.userRepository.update({ userId }, { preferred_language: language }); } diff --git a/apps/api/src/app/user/user.controller.spec.ts b/apps/api/src/app/user/user.controller.spec.ts index fcfa569a..4b2b126a 100644 --- a/apps/api/src/app/user/user.controller.spec.ts +++ b/apps/api/src/app/user/user.controller.spec.ts @@ -73,8 +73,24 @@ describe('UserController', () => { ); }); + it('should update language to a newly supported language', async () => { + const body = { language: 'de' }; + mockUserLanguageService.updateUserLanguage.mockResolvedValue(undefined); + + const result = await controller.updateLanguage(mockUser, body); + + expect(result).toEqual({ + success: true, + language: 'de', + }); + expect(userLanguageService.updateUserLanguage).toHaveBeenCalledWith( + 'test-user-id', + 'de' + ); + }); + it('should throw BadRequestException for invalid language', async () => { - const body = { language: 'es' }; + const body = { language: 'xx' }; await expect(controller.updateLanguage(mockUser, body)).rejects.toThrow( BadRequestException diff --git a/apps/api/src/app/user/user.controller.ts b/apps/api/src/app/user/user.controller.ts index 2541c1ef..b68d1951 100644 --- a/apps/api/src/app/user/user.controller.ts +++ b/apps/api/src/app/user/user.controller.ts @@ -13,6 +13,10 @@ import { CurrentUser } from '../auth/current-user.decorator'; import { User } from '../../entities/user.entity'; import { UserLanguageService } from './user-language.service'; import { ThrottleOptions } from '../../config/throttle.config'; +import { + SupportedLanguage, + SUPPORTED_LANGUAGES, +} from '../../common/utils/language.util'; interface UpdateLanguageDto { language: string; @@ -44,11 +48,16 @@ export class UserController { @CurrentUser() user: User, @Body() body: UpdateLanguageDto ): Promise<{ success: boolean; language: string }> { - if (!body.language || (body.language !== 'en' && body.language !== 'fr')) { - throw new BadRequestException('Language must be "en" or "fr"'); + if ( + !body.language || + !SUPPORTED_LANGUAGES.includes(body.language as SupportedLanguage) + ) { + throw new BadRequestException( + `Language must be one of: ${SUPPORTED_LANGUAGES.join(', ')}` + ); } - const language = body.language as 'en' | 'fr'; + const language = body.language as SupportedLanguage; this.logger.log( `🌍 Updating language for user ${user.userId} to ${language}` diff --git a/apps/api/src/common/utils/language.util.spec.ts b/apps/api/src/common/utils/language.util.spec.ts index 837f66e1..7933e958 100644 --- a/apps/api/src/common/utils/language.util.spec.ts +++ b/apps/api/src/common/utils/language.util.spec.ts @@ -17,10 +17,29 @@ describe('Language Utilities', () => { expect(extractPreferredLanguage('en-GB')).toBe('en'); }); - it('should return "en" for other languages', () => { - expect(extractPreferredLanguage('es-ES')).toBe('en'); - expect(extractPreferredLanguage('de-DE')).toBe('en'); + it('should return the matching language for newly supported locales', () => { + expect(extractPreferredLanguage('de-DE')).toBe('de'); + expect(extractPreferredLanguage('nl-NL')).toBe('nl'); + expect(extractPreferredLanguage('no')).toBe('no'); + expect(extractPreferredLanguage('es-ES')).toBe('es'); + expect(extractPreferredLanguage('it-IT')).toBe('it'); + expect(extractPreferredLanguage('sv-SE')).toBe('sv'); + expect(extractPreferredLanguage('da-DK')).toBe('da'); + }); + + it('should map Norwegian Bokmål and Nynorsk tags to "no"', () => { + expect(extractPreferredLanguage('nb-NO')).toBe('no'); + expect(extractPreferredLanguage('nb')).toBe('no'); + expect(extractPreferredLanguage('nn-NO')).toBe('no'); + expect( + extractPreferredLanguage('nb-NO,nb;q=0.9,en-US;q=0.8,en;q=0.7') + ).toBe('no'); + }); + + it('should return "en" for unsupported languages', () => { expect(extractPreferredLanguage('ja-JP')).toBe('en'); + expect(extractPreferredLanguage('pt-BR')).toBe('en'); + expect(extractPreferredLanguage('zh-CN')).toBe('en'); }); it('should return "en" for undefined header', () => { @@ -41,6 +60,11 @@ describe('Language Utilities', () => { expect(extractPreferredLanguage('en;q=0.5,fr;q=0.9')).toBe('fr'); expect(extractPreferredLanguage('fr;q=0.3,en;q=0.8')).toBe('en'); }); + + it('should exclude languages with zero quality', () => { + expect(extractPreferredLanguage('de;q=0,en;q=0.3')).toBe('en'); + expect(extractPreferredLanguage('fr,de;q=0,en;q=0.8')).toBe('fr'); + }); }); describe('normalizeTeslaLocale', () => { @@ -51,6 +75,16 @@ describe('Language Utilities', () => { it('should convert "fr" to "fr-FR"', () => { expect(normalizeTeslaLocale('fr')).toBe('fr-FR'); }); + + it('should map newly supported languages to their Tesla locale', () => { + expect(normalizeTeslaLocale('de')).toBe('de-DE'); + expect(normalizeTeslaLocale('nl')).toBe('nl-NL'); + expect(normalizeTeslaLocale('no')).toBe('nb-NO'); + expect(normalizeTeslaLocale('es')).toBe('es-ES'); + expect(normalizeTeslaLocale('it')).toBe('it-IT'); + expect(normalizeTeslaLocale('sv')).toBe('sv-SE'); + expect(normalizeTeslaLocale('da')).toBe('da-DK'); + }); }); }); diff --git a/apps/api/src/common/utils/language.util.ts b/apps/api/src/common/utils/language.util.ts index 26287ed3..ec107e3b 100644 --- a/apps/api/src/common/utils/language.util.ts +++ b/apps/api/src/common/utils/language.util.ts @@ -1,8 +1,50 @@ +export type SupportedLanguage = + | 'en' + | 'fr' + | 'de' + | 'nl' + | 'no' + | 'es' + | 'it' + | 'sv' + | 'da'; + +export const SUPPORTED_LANGUAGES: SupportedLanguage[] = [ + 'en', + 'fr', + 'de', + 'nl', + 'no', + 'es', + 'it', + 'sv', + 'da', +]; + +const DEFAULT_LANGUAGE: SupportedLanguage = 'en'; + +const LANGUAGE_ALIASES: Record = { + nb: 'no', + nn: 'no', +}; + +const TESLA_LOCALE_BY_LANGUAGE: Record = { + en: 'en-US', + fr: 'fr-FR', + de: 'de-DE', + nl: 'nl-NL', + no: 'nb-NO', + es: 'es-ES', + it: 'it-IT', + sv: 'sv-SE', + da: 'da-DK', +}; + export function extractPreferredLanguage( acceptLanguageHeader?: string -): 'en' | 'fr' { +): SupportedLanguage { if (!acceptLanguageHeader) { - return 'en'; + return DEFAULT_LANGUAGE; } const languages = acceptLanguageHeader @@ -10,20 +52,24 @@ export function extractPreferredLanguage( .map((lang) => { const [code, qValue] = lang.trim().split(';'); const quality = qValue ? parseFloat(qValue.split('=')[1]) : 1.0; - return { code: code.split('-')[0].toLowerCase(), quality }; + const primaryTag = code.split('-')[0].toLowerCase(); + return { code: LANGUAGE_ALIASES[primaryTag] ?? primaryTag, quality }; }) + .filter((lang) => lang.quality > 0) .sort((a, b) => b.quality - a.quality); for (const lang of languages) { - if (lang.code === 'fr' || lang.code === 'en') { - return lang.code as 'en' | 'fr'; + const match = SUPPORTED_LANGUAGES.find( + (supported) => supported === lang.code + ); + if (match) { + return match; } } - return 'en'; + return DEFAULT_LANGUAGE; } -export function normalizeTeslaLocale(locale: 'en' | 'fr'): string { - return locale === 'fr' ? 'fr-FR' : 'en-US'; +export function normalizeTeslaLocale(locale: SupportedLanguage): string { + return TESLA_LOCALE_BY_LANGUAGE[locale] ?? TESLA_LOCALE_BY_LANGUAGE[DEFAULT_LANGUAGE]; } - diff --git a/apps/api/src/i18n.ts b/apps/api/src/i18n.ts index 0959e97a..eeff4639 100644 --- a/apps/api/src/i18n.ts +++ b/apps/api/src/i18n.ts @@ -13,6 +13,41 @@ const resources = { readFileSync(join(__dirname, 'locales/fr/common.json'), 'utf-8') ), }, + de: { + common: JSON.parse( + readFileSync(join(__dirname, 'locales/de/common.json'), 'utf-8') + ), + }, + nl: { + common: JSON.parse( + readFileSync(join(__dirname, 'locales/nl/common.json'), 'utf-8') + ), + }, + no: { + common: JSON.parse( + readFileSync(join(__dirname, 'locales/no/common.json'), 'utf-8') + ), + }, + es: { + common: JSON.parse( + readFileSync(join(__dirname, 'locales/es/common.json'), 'utf-8') + ), + }, + it: { + common: JSON.parse( + readFileSync(join(__dirname, 'locales/it/common.json'), 'utf-8') + ), + }, + sv: { + common: JSON.parse( + readFileSync(join(__dirname, 'locales/sv/common.json'), 'utf-8') + ), + }, + da: { + common: JSON.parse( + readFileSync(join(__dirname, 'locales/da/common.json'), 'utf-8') + ), + }, }; i18n.init({ diff --git a/apps/api/src/locales/da/common.json b/apps/api/src/locales/da/common.json new file mode 100644 index 00000000..a14cbd5e --- /dev/null +++ b/apps/api/src/locales/da/common.json @@ -0,0 +1,79 @@ +{ + "🧪 Test message from SentryGuard API": "🧪 Testbesked sendt fra SentryGuard.", + "An error occurred": "❌ Der opstod en fejl. Prøv igen senere.", + "Available commands": "📖 Tilgængelige kommandoer:\n\n/start - Start, og tilknyt din konto\n/status - Tjek tilknytningsstatus\n/help - Vis hjælp", + "Invalid or expired token": "❌ Ugyldigt eller udløbet token. Generér et nyt link i appen.", + "No account linked": "❌ Ingen konto tilknyttet. Brug linket fra webappen.", + "Sentry Mode activated - Check your vehicle!": "Sentry-hændelse registreret – tjek dit køretøj!", + "TESLA SENTRY ALERT": "TESLA SENTRY-ALARM", + "TESLA BREAK-IN ALERT": "TESLA INDBRUDSALARM", + "Break-in attempt detected. Check your vehicle immediately!": "Indbrudsforsøg registreret. Tjek dit køretøj med det samme!", + "This token has expired": "⏰ Dette token er udløbet. Generér et nyt link i appen.", + "Vehicle": "Køretøj", + "Welcome to SentryGuard Bot": "🚗 Velkommen til SentryGuard-botten!\n\nFor at tilknytte din konto skal du bruge linket i webappen.", + "Your account is linked and active!": "✅ Din konto er tilknyttet og aktiv!", + "Your SentryGuard account has been linked successfully!": "✅ Din SentryGuard-konto er blevet tilknyttet!\n\nDu vil nu modtage køretøjsalarmer her.", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Ved at underskrive eller acceptere denne formular giver du samtykke til, at SentryGuardOrg (\"Partner\") behandler dine Personoplysninger i forbindelse med Partnerens applikation med titlen SentryGuard (\"Appen\").", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "Partneren er den dataansvarlige, der er ansvarlig for behandlingen af dine Personoplysninger i forbindelse med Appen.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Ved at underskrive eller acceptere denne formular bekræfter du også at have modtaget Teslas privatlivsmeddelelse til kunder, der er tilgængelig på", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(\"Teslas privatlivsmeddelelse\") og giver samtykke til, at Tesla behandler Personoplysninger i overensstemmelse med Teslas privatlivsmeddelelse.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (such as event detection, Sentry Mode alerts, and break-in attempt monitoring), and the ability to configure automated deterrent actions (such as honking the horn) upon detection of these events.": "Appen giver dig mulighed for at drage fordel af avancerede overvågnings- og notifikationsfunktioner baseret på dit Tesla-køretøjs Sentry Mode, herunder identifikation og logning af sikkerhedshændelser (såsom hændelsesregistrering, Sentry Mode-alarmer og overvågning af indbrudsforsøg), samt muligheden for at konfigurere automatiserede afskrækkende handlinger (såsom at dytte med hornet) ved registrering af disse hændelser.", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events), configuration preferences for deterrent security responses, and metadata associated with Sentry Mode and break-in events (date/time, event type).": "For at levere disse funktioner skal partneren behandle nogle af dine personoplysninger, som kan omfatte: profiloplysninger (kontoidentifikator, visningsnavn eller e-mailadresse, der er nødvendig for at forbinde hændelser med din konto); minimale køretøjsoplysninger, der er nødvendige for, at appen kan fungere, herunder stelnummer (VIN eller tilsvarende), status for Sentry Mode (aktivering, registrerede hændelser), konfigurationspræferencer for afskrækkende sikkerhedsresponser og metadata forbundet med Sentry Mode- og indbrudshændelser (dato/tidspunkt, hændelsestype).", + "Partner does not access or process other categories of data from your vehicle (e.g., detailed driving data, battery or precise location information). The authorization to send commands (such as honking the horn) is optional and is only requested if you choose to enable the Offensive Response deterrent feature.": "Partneren tilgår eller behandler ikke andre kategorier af data fra dit køretøj (f.eks. detaljerede køredata, batteri- eller præcise placeringsoplysninger). Tilladelsen til at sende kommandoer (såsom at dytte med hornet) er valgfri og anmodes kun, hvis du vælger at aktivere den afskrækkende funktion Offensiv respons.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "Partneren bruger kun disse oplysninger til:\n\n(a) at levere overvågnings- og notifikationsfunktioner relateret til Sentry Mode til dig;\n\n(b) at knytte Sentry Mode-hændelser til din brugerkonto og dit køretøj;\n\n(c) at forbedre tjenestens pålidelighed og sikkerhed (f.eks. diagnosticering af tekniske hændelser);\n\n(d) at overholde gældende lovkrav, hvor det er relevant.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "Partneren opretholder administrative, tekniske og fysiske sikkerhedsforanstaltninger, der har til formål at beskytte Personoplysninger mod hændelig, ulovlig eller uautoriseret destruktion, tab, ændring, adgang, videregivelse eller anvendelse, herunder kryptering af data under overførsel og, hvor det er relevant, i hvile. Partneren opbevarer kun dine Personoplysninger, så længe det er nødvendigt for at levere Appen og de ovenfor beskrevne funktioner til dig, medmindre andet kræves eller tillades af gældende lovgivning, eller hvis du anmoder om tidlig sletning.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "Appen leveres \"som den er\" og \"som tilgængelig\", uden nogen form for garanti. SentryGuard og dets ophavsmænd fraskriver sig ethvert ansvar for direkte, indirekte, hændelige, særlige eller følgeskader, herunder, men ikke begrænset til, skader på køretøjet, tab af data eller serviceafbrydelser, der opstår som følge af brugen af eller manglende evne til at bruge Appen. Brugeren påtager sig det fulde og eneansvar for brugen af Appen og enhver konfigureret automatiseret handling (såsom at dytte med hornet).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "I henhold til gældende lovgivning (herunder GDPR) kan du have ret til at anmode om indsigt i og modtage oplysninger om dine Personoplysninger, opdatere og rette unøjagtigheder samt anmode om sletning, når de retlige betingelser er opfyldt. Du har også ret til at trække dit samtykke tilbage til enhver tid og uden omkostninger, hvilket dog kan begrænse eller forhindre brugen af Appen.\n\nFor at udøve dine rettigheder, trække dit samtykke tilbage eller få flere oplysninger om Appen og behandlingen af dine Personoplysninger kan du kontakte Partneren på: hello@sentryguard.org.", + "By accepting this consent, you also agree to receive occasional emails from Partner regarding product updates, new features, security alerts, and important service announcements. You can unsubscribe from these communications at any time via the unsubscribe link included in each email.": "Ved at acceptere dette samtykke accepterer du også at modtage lejlighedsvise e-mails fra partneren vedrørende produktopdateringer, nye funktioner, sikkerhedsadvarsler og vigtige servicemeddelelser. Du kan til enhver tid afmelde disse meddelelser via afmeldingslinket i hver e-mail.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Jeg giver samtykke til indsamling, brug og behandling af mine Personoplysninger som beskrevet ovenfor.", + "Open Tesla App": "Tjek", + "Tesla App Redirect": "Åbner Tesla-appen", + "Opening Tesla app...": "Åbner Tesla-appen …", + "Could not open Tesla app automatically.": "Tesla-appen kunne ikke åbnes automatisk.", + "Redirecting to download...": "Omdirigerer til download …", + "Download Tesla App": "Download Tesla-appen", + "iOS App Store": "iOS App Store", + "Android Play Store": "Android Play Store", + "Choose your platform": "Vælg din platform", + "user": "Bruger", + "welcomeEmailSubject": "Din adgang til SentryGuard er blevet godkendt!", + "welcomeEmailBody": "
\"SentryGuard\"

Din konto er blevet godkendt!

Hej {{name}},

Gode nyheder! Din SentryGuard-konto er blevet godkendt. Du kan nu logge ind og begynde at overvåge Sentry Mode på dit Tesla-køretøj i realtid.

Vores opsætningsguide leder dig trin for trin gennem konfigurationen.

💙 Støt SentryGuard

Hvis du finder SentryGuard nyttigt, så overvej at støtte projektet:

Ingen GitHub-konto? Intet problem! Det er 100 % gratis og tager 2 minutter: opret en konto, og klik på ⭐ ovenfor. Det hjælper os virkelig med at sprede budskabet!

Tak for din tålmodighed og din interesse for SentryGuard!

SentryGuard-teamet

", + "welcomeEmailBodyNoName": "
\"SentryGuard\"

Din konto er blevet godkendt!

Hej,

Gode nyheder! Din SentryGuard-konto er blevet godkendt. Du kan nu logge ind og begynde at overvåge Sentry Mode på dit Tesla-køretøj i realtid.

Vores opsætningsguide leder dig trin for trin gennem konfigurationen.

💙 Støt SentryGuard

Hvis du finder SentryGuard nyttigt, så overvej at støtte projektet:

Ingen GitHub-konto? Intet problem! Det er 100 % gratis og tager 2 minutter: opret en konto, og klik på ⭐ ovenfor. Det hjælper os virkelig med at sprede budskabet!

Tak for din tålmodighed og din interesse for SentryGuard!

SentryGuard-teamet

", + "telegramLinkedFollowUp": "✅ Perfekt! Dit Telegram er nu tilknyttet.\n\n📋 Næste trin:\n• Opsæt en virtuel nøgle i Tesla-appen\n• Aktivér telemetriovervågning\n\n👉 Vend tilbage til SentryGuard for at fortsætte opsætningen.", + "menuButtonStatus": "📊 Min status", + "menuButtonMute": "🔕 Sluk for alarmer", + "menuButtonMuteActive": "🔔 Genaktivér alarmer", + "muteDurationTitle": "⏱ Hvor længe?", + "muteConfirmed": "🔕 Alarmer slået fra i {{duration}}", + "muteAlreadyActive": "🔕 Alarmerne er slået fra i {{duration}} endnu.\n\nHvad vil du gøre?", + "muteReactivate": "🔔 Genaktivér nu", + "muteChangeDuration": "⏱ Skift varighed", + "muteReactivated": "🔔 Alarmer genaktiveret!", + "configStatusMutedUntil": "🔕 Slået fra i {{duration}} endnu", + "configStatusTitle": "📊 Konfigurationsstatus", + "configStatusTelegram": "🔔 Telegram", + "configStatusTelegramLinked": "✅ Tilknyttet siden {{date}}", + "configStatusVehicles": "🚗 Køretøjer", + "configStatusNoVehicles": "Ingen køretøjer registreret", + "configStatusTelemetryActive": "✅ Telemetri aktiv", + "configStatusTelemetryInactive": "❌ Telemetri inaktiv", + "botUpdateV1": "🆕 SentryGuard er blevet opdateret!\n\nDu kan nu administrere dine alarmindstillinger direkte fra menuen nedenfor.\n\n• 📊 Min status — Se din konfiguration\n• 🔕 Sluk for alarmer — Sæt notifikationer på pause midlertidigt", + "offensiveBreakIn": "🚨 Indbrud", + "offensiveNoVehicles": "🚫 Ingen køretøjer registreret endnu. Aktivér overvågning først.", + "offensiveSelectVehicle": "🚗 Vælg et køretøj:", + "offensiveChooseResponse": "🚗 {{vehicle}}\n\nVælg den offensive respons:", + "offensiveDisabled": "⛔ Deaktiveret", + "offensiveHonk": "📯 Dyt", + "offensiveConfirmed": "✅ {{vehicle}} respons indstillet til: {{response}}", + "offensiveTest": "🧪 Test", + "offensiveTestTriggered": "Test udløst!", + "offensiveTestDisabled": "Aktivér en offensiv respons, før du tester.", + "offensiveActivatedFor": "📯 {{vehicle}}\n\nHorn aktiveret i {{duration}}", + "offensiveDeactivatedAuto": "⏱️ {{vehicle}}\n\nHorn deaktiveret automatisk", + "offensiveError": "❌ Fejl ved opdatering af offensiv respons", + "offensiveDisabledMsg": "📯 {{vehicle}}\n\nHorn deaktiveret", + "Intrusion alert": "Indbrudsalarm", + "A break-in attempt was detected.": "Et indbrudsforsøg blev registreret.", + "Sentry alert": "Sentry-alarm", + "A Sentry event was detected.": "En Sentry-hændelse blev registreret." +} diff --git a/apps/api/src/locales/de/common.json b/apps/api/src/locales/de/common.json new file mode 100644 index 00000000..1d6f4f52 --- /dev/null +++ b/apps/api/src/locales/de/common.json @@ -0,0 +1,79 @@ +{ + "🧪 Test message from SentryGuard API": "🧪 Testnachricht von der SentryGuard-API", + "An error occurred": "❌ Ein Fehler ist aufgetreten. Bitte versuchen Sie es später erneut.", + "Available commands": "📖 Verfügbare Befehle:\n\n/start - Starten und Ihr Konto verknüpfen\n/status - Verknüpfungsstatus prüfen\n/help - Hilfe anzeigen", + "Invalid or expired token": "❌ Ungültiges oder abgelaufenes Token. Bitte erstellen Sie in der App einen neuen Link.", + "No account linked": "❌ Kein Konto verknüpft. Bitte verwenden Sie den Link aus der Web-App.", + "Sentry Mode activated - Check your vehicle!": "Sentry-Ereignis erkannt – Überprüfen Sie Ihr Fahrzeug!", + "TESLA SENTRY ALERT": "TESLA SENTRY-ALARM", + "TESLA BREAK-IN ALERT": "TESLA EINBRUCHALARM", + "Break-in attempt detected. Check your vehicle immediately!": "Einbruchversuch erkannt. Überprüfen Sie Ihr Fahrzeug sofort!", + "This token has expired": "⏰ Dieses Token ist abgelaufen. Bitte erstellen Sie in der App einen neuen Link.", + "Vehicle": "Fahrzeug", + "Welcome to SentryGuard Bot": "🚗 Willkommen beim SentryGuard Bot!\n\nUm Ihr Konto zu verknüpfen, verwenden Sie den in der Web-App bereitgestellten Link.", + "Your account is linked and active!": "✅ Ihr Konto ist verknüpft und aktiv!", + "Your SentryGuard account has been linked successfully!": "✅ Ihr SentryGuard-Konto wurde erfolgreich verknüpft!\n\nSie erhalten Fahrzeugalarme ab sofort hier.", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Mit der Unterzeichnung oder Annahme dieses Formulars willigen Sie in die Verarbeitung Ihrer personenbezogenen Daten durch SentryGuardOrg („Partner“) im Rahmen der Anwendung des Partners mit dem Titel SentryGuard (die „App“) ein.", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "Der Partner ist der für die Verarbeitung Ihrer personenbezogenen Daten im Rahmen der App verantwortliche Verantwortliche.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Mit der Unterzeichnung oder Annahme dieses Formulars bestätigen Sie außerdem den Erhalt der Tesla-Datenschutzhinweise für Kunden, verfügbar unter", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(„Tesla-Datenschutzhinweis“) und willigen in die Verarbeitung Ihrer personenbezogenen Daten durch Tesla gemäß dem Tesla-Datenschutzhinweis ein.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (such as event detection, Sentry Mode alerts, and break-in attempt monitoring), and the ability to configure automated deterrent actions (such as honking the horn) upon detection of these events.": "Die App ermöglicht Ihnen die Nutzung erweiterter Überwachungs- und Benachrichtigungsfunktionen auf Basis des Sentry Mode Ihres Tesla-Fahrzeugs, einschließlich der Identifizierung und Protokollierung von Sicherheitsereignissen (wie Ereigniserkennung, Sentry Mode-Warnungen und Überwachung von Einbruchsversuchen) sowie der Möglichkeit, bei Erkennung dieser Ereignisse automatisierte Abschreckungsmaßnahmen (wie das Betätigen der Hupe) zu konfigurieren.", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events), configuration preferences for deterrent security responses, and metadata associated with Sentry Mode and break-in events (date/time, event type).": "Um diese Funktionen bereitzustellen, muss der Partner einige Ihrer personenbezogenen Daten verarbeiten. Dazu können gehören: Profilinformationen (Konto-ID, Anzeigename oder E-Mail-Adresse, erforderlich zur Verknüpfung von Ereignissen mit Ihrem Konto); minimale Fahrzeuginformationen, die für die Funktion der App erforderlich sind, einschließlich Fahrzeug-Identifizierungsnummer (FIN oder Äquivalent), Status des Sentry Mode (Aktivierung, erkannte Ereignisse), Konfigurationseinstellungen für abschreckende Sicherheitsreaktionen und Metadaten zu Sentry Mode- und Einbruchsereignissen (Datum/Uhrzeit, Ereignistyp).", + "Partner does not access or process other categories of data from your vehicle (e.g., detailed driving data, battery or precise location information). The authorization to send commands (such as honking the horn) is optional and is only requested if you choose to enable the Offensive Response deterrent feature.": "Der Partner greift nicht auf andere Datenkategorien Ihres Fahrzeugs zu und verarbeitet diese nicht (z. B. detaillierte Fahrdaten, Batterie- oder genaue Standortinformationen). Die Berechtigung zum Senden von Befehlen (wie das Betätigen der Hupe) ist optional und wird nur angefordert, wenn Sie die abschreckende Funktion „Offensive Reaktion“ aktivieren möchten.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "Der Partner verwendet diese Informationen ausschließlich für:\n\n(a) die Bereitstellung der Überwachungs- und Benachrichtigungsfunktionen im Zusammenhang mit dem Sentry Mode;\n\n(b) die Verknüpfung von Sentry Mode-Ereignissen mit Ihrem Benutzerkonto und Fahrzeug;\n\n(c) die Verbesserung der Zuverlässigkeit und Sicherheit des Dienstes (z. B. Diagnose technischer Vorfälle);\n\n(d) die Erfüllung geltender gesetzlicher Verpflichtungen, sofern zutreffend.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "Der Partner unterhält administrative, technische und physische Schutzmaßnahmen, die darauf ausgelegt sind, personenbezogene Daten vor versehentlicher, rechtswidriger oder unbefugter Zerstörung, Verlust, Veränderung, Zugriff, Offenlegung oder Nutzung zu schützen, einschließlich der Verschlüsselung von Daten während der Übertragung und, sofern angemessen, im Ruhezustand. Der Partner speichert Ihre personenbezogenen Daten nur so lange, wie es erforderlich ist, um Ihnen die App und die oben beschriebenen Funktionen bereitzustellen, sofern nicht durch geltendes Recht etwas anderes vorgeschrieben oder gestattet ist oder Sie eine vorzeitige Löschung verlangen.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "Die App wird „wie besehen“ und „je nach Verfügbarkeit“ ohne jegliche Gewährleistung bereitgestellt. SentryGuard und seine Autoren lehnen jede Haftung für direkte, indirekte, zufällige, besondere oder Folgeschäden ab, einschließlich, aber nicht beschränkt auf Fahrzeugschäden, Datenverlust oder Dienstunterbrechungen, die sich aus der Nutzung oder der Unmöglichkeit der Nutzung der App ergeben. Der Nutzer übernimmt die alleinige und volle Verantwortung für die Nutzung der App und alle konfigurierten automatisierten Aktionen (wie das Betätigen der Hupe).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "Vorbehaltlich des geltenden Rechts (einschließlich der DSGVO) haben Sie möglicherweise das Recht, Auskunft über Ihre personenbezogenen Daten zu verlangen und Informationen darüber zu erhalten, Ungenauigkeiten zu aktualisieren und zu berichtigen sowie die Löschung zu verlangen, sofern die gesetzlichen Voraussetzungen erfüllt sind. Sie haben außerdem das Recht, Ihre Einwilligung jederzeit kostenlos zu widerrufen, was jedoch die Nutzung der App einschränken oder verhindern kann.\n\nUm Ihre Rechte auszuüben, Ihre Einwilligung zu widerrufen oder weitere Informationen über die App und die Verarbeitung Ihrer personenbezogenen Daten zu erhalten, können Sie den Partner unter folgender Adresse kontaktieren: hello@sentryguard.org.", + "By accepting this consent, you also agree to receive occasional emails from Partner regarding product updates, new features, security alerts, and important service announcements. You can unsubscribe from these communications at any time via the unsubscribe link included in each email.": "Mit der Annahme dieser Einwilligung erklären Sie sich außerdem damit einverstanden, gelegentlich E-Mails vom Partner zu Produktaktualisierungen, neuen Funktionen, Sicherheitswarnungen und wichtigen Servicemitteilungen zu erhalten. Sie können sich jederzeit über den in jeder E-Mail enthaltenen Abmeldelink von diesen Mitteilungen abmelden.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Ich willige in die Erhebung, Nutzung und Verarbeitung meiner personenbezogenen Daten wie oben beschrieben ein.", + "Open Tesla App": "Prüfen", + "Tesla App Redirect": "Tesla App wird geöffnet", + "Opening Tesla app...": "Tesla App wird geöffnet …", + "Could not open Tesla app automatically.": "Die Tesla App konnte nicht automatisch geöffnet werden.", + "Redirecting to download...": "Weiterleitung zum Download …", + "Download Tesla App": "Tesla App herunterladen", + "iOS App Store": "iOS App Store", + "Android Play Store": "Android Play Store", + "Choose your platform": "Wählen Sie Ihre Plattform", + "user": "Benutzer", + "welcomeEmailSubject": "Ihr Zugang zu SentryGuard wurde freigeschaltet!", + "welcomeEmailBody": "
\"SentryGuard\"

Ihr Konto wurde freigeschaltet!

Hallo {{name}},

Gute Nachrichten! Ihr SentryGuard-Konto wurde freigeschaltet. Sie können sich jetzt anmelden und den Sentry Mode Ihres Tesla-Fahrzeugs in Echtzeit überwachen.

Unser Einrichtungsassistent führt Sie Schritt für Schritt durch die Konfiguration.

💙 SentryGuard unterstützen

Wenn Ihnen SentryGuard gefällt, unterstützen Sie bitte das Projekt:

Kein GitHub-Konto? Kein Problem! Es ist 100 % kostenlos und dauert nur 2 Minuten: Erstellen Sie ein Konto und klicken Sie oben auf ⭐. Das hilft uns sehr, das Projekt bekannter zu machen!

Vielen Dank für Ihre Geduld und Ihr Interesse an SentryGuard!

Das SentryGuard-Team

", + "welcomeEmailBodyNoName": "
\"SentryGuard\"

Ihr Konto wurde freigeschaltet!

Hallo,

Gute Nachrichten! Ihr SentryGuard-Konto wurde freigeschaltet. Sie können sich jetzt anmelden und den Sentry Mode Ihres Tesla-Fahrzeugs in Echtzeit überwachen.

Unser Einrichtungsassistent führt Sie Schritt für Schritt durch die Konfiguration.

💙 SentryGuard unterstützen

Wenn Ihnen SentryGuard gefällt, unterstützen Sie bitte das Projekt:

Kein GitHub-Konto? Kein Problem! Es ist 100 % kostenlos und dauert nur 2 Minuten: Erstellen Sie ein Konto und klicken Sie oben auf ⭐. Das hilft uns sehr, das Projekt bekannter zu machen!

Vielen Dank für Ihre Geduld und Ihr Interesse an SentryGuard!

Das SentryGuard-Team

", + "telegramLinkedFollowUp": "✅ Perfekt! Ihr Telegram ist jetzt verknüpft.\n\n📋 Nächste Schritte:\n• Einen virtuellen Schlüssel in der Tesla App einrichten\n• Die Telemetrieüberwachung aktivieren\n\n👉 Kehren Sie zu SentryGuard zurück, um die Einrichtung fortzusetzen.", + "menuButtonStatus": "📊 Mein Status", + "menuButtonMute": "🔕 Alarme stummschalten", + "menuButtonMuteActive": "🔔 Alarme reaktivieren", + "muteDurationTitle": "⏱ Für wie lange?", + "muteConfirmed": "🔕 Alarme stummgeschaltet für {{duration}}", + "muteAlreadyActive": "🔕 Die Alarme sind noch für {{duration}} stummgeschaltet.\n\nWas möchten Sie tun?", + "muteReactivate": "🔔 Jetzt reaktivieren", + "muteChangeDuration": "⏱ Dauer ändern", + "muteReactivated": "🔔 Alarme reaktiviert!", + "configStatusMutedUntil": "🔕 Noch für {{duration}} stummgeschaltet", + "configStatusTitle": "📊 Konfigurationsstatus", + "configStatusTelegram": "🔔 Telegram", + "configStatusTelegramLinked": "✅ Verknüpft seit {{date}}", + "configStatusVehicles": "🚗 Fahrzeuge", + "configStatusNoVehicles": "Keine Fahrzeuge registriert", + "configStatusTelemetryActive": "✅ Telemetrie aktiv", + "configStatusTelemetryInactive": "❌ Telemetrie inaktiv", + "botUpdateV1": "🆕 SentryGuard wurde aktualisiert!\n\nSie können Ihre Alarmeinstellungen jetzt direkt über das untenstehende Menü verwalten.\n\n• 📊 Mein Status — Ihre Konfiguration anzeigen\n• 🔕 Alarme stummschalten — Benachrichtigungen vorübergehend stummschalten", + "offensiveBreakIn": "🚨 Einbruch", + "offensiveNoVehicles": "🚫 Noch keine Fahrzeuge registriert. Aktivieren Sie zuerst die Überwachung.", + "offensiveSelectVehicle": "🚗 Fahrzeug auswählen:", + "offensiveChooseResponse": "🚗 {{vehicle}}\n\nWählen Sie die offensive Reaktion:", + "offensiveDisabled": "⛔ Deaktiviert", + "offensiveHonk": "📯 Hupen", + "offensiveConfirmed": "✅ {{vehicle}} Reaktion festgelegt auf: {{response}}", + "offensiveTest": "🧪 Test", + "offensiveTestTriggered": "Test ausgelöst!", + "offensiveTestDisabled": "Aktivieren Sie zuerst eine offensive Reaktion, bevor Sie testen.", + "offensiveActivatedFor": "📯 {{vehicle}}\n\nHupe aktiviert für {{duration}}", + "offensiveDeactivatedAuto": "⏱️ {{vehicle}}\n\nHupe automatisch deaktiviert", + "offensiveError": "❌ Fehler beim Aktualisieren der offensiven Reaktion", + "offensiveDisabledMsg": "📯 {{vehicle}}\n\nHupe deaktiviert", + "Intrusion alert": "Einbruchalarm", + "A break-in attempt was detected.": "Ein Einbruchversuch wurde erkannt.", + "Sentry alert": "Sentry-Alarm", + "A Sentry event was detected.": "Ein Sentry-Ereignis wurde erkannt." +} diff --git a/apps/api/src/locales/es/common.json b/apps/api/src/locales/es/common.json new file mode 100644 index 00000000..1a9d6fd5 --- /dev/null +++ b/apps/api/src/locales/es/common.json @@ -0,0 +1,79 @@ +{ + "🧪 Test message from SentryGuard API": "🧪 Mensaje de prueba enviado desde SentryGuard.", + "An error occurred": "❌ Se ha producido un error. Inténtalo de nuevo más tarde.", + "Available commands": "📖 Comandos disponibles:\n\n/start - Iniciar y vincular tu cuenta\n/status - Comprobar el estado del vínculo\n/help - Mostrar ayuda", + "Invalid or expired token": "❌ Token no válido o caducado. Genera un nuevo enlace desde la aplicación.", + "No account linked": "❌ Ninguna cuenta vinculada. Usa el enlace de la aplicación web.", + "Sentry Mode activated - Check your vehicle!": "Evento de Sentry Mode detectado: ¡comprueba tu vehículo!", + "TESLA SENTRY ALERT": "ALERTA SENTRY DE TESLA", + "TESLA BREAK-IN ALERT": "ALERTA DE ALLANAMIENTO DE TESLA", + "Break-in attempt detected. Check your vehicle immediately!": "Intento de allanamiento detectado. ¡Comprueba tu vehículo de inmediato!", + "This token has expired": "⏰ Este token ha caducado. Genera un nuevo enlace desde la aplicación.", + "Vehicle": "Vehículo", + "Welcome to SentryGuard Bot": "🚗 ¡Bienvenido al bot de SentryGuard!\n\nPara vincular tu cuenta, usa el enlace proporcionado en la aplicación web.", + "Your account is linked and active!": "✅ ¡Tu cuenta está vinculada y activa!", + "Your SentryGuard account has been linked successfully!": "✅ ¡Tu cuenta de SentryGuard se ha vinculado correctamente!\n\nA partir de ahora recibirás las alertas del vehículo aquí.", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Al firmar o aceptar este formulario, usted consiente el tratamiento de sus Datos Personales por parte de SentryGuardOrg («Socio») en el contexto de la aplicación del Socio denominada SentryGuard (la «App»).", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "El Socio es el responsable del tratamiento encargado del tratamiento de sus Datos Personales en el contexto de la App.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Al firmar o aceptar este formulario, usted también reconoce haber recibido el Aviso de Privacidad del Cliente de Tesla disponible en", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(«Aviso de Privacidad de Tesla») y consiente el tratamiento de sus Datos Personales por parte de Tesla de conformidad con el Aviso de Privacidad de Tesla.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (such as event detection, Sentry Mode alerts, and break-in attempt monitoring), and the ability to configure automated deterrent actions (such as honking the horn) upon detection of these events.": "La App le permite beneficiarse de funciones avanzadas de supervisión y notificación basadas en el Sentry Mode de su vehículo Tesla, incluyendo la identificación y registro de eventos de seguridad (como detección de eventos, alertas de Sentry Mode y supervisión de intentos de intrusión), así como la posibilidad de configurar acciones disuasorias automatizadas (como hacer sonar la bocina) tras la detección de estos eventos.", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events), configuration preferences for deterrent security responses, and metadata associated with Sentry Mode and break-in events (date/time, event type).": "Para proporcionar estas funciones, el Socio debe procesar algunos de sus Datos Personales, que pueden incluir: información de perfil (identificador de cuenta, nombre para mostrar o dirección de correo electrónico, necesarios para asociar eventos con su cuenta); información mínima del vehículo necesaria para el funcionamiento de la App, incluyendo el identificador del vehículo (VIN o equivalente), estado de Sentry Mode (activación, eventos detectados), preferencias de configuración para respuestas de seguridad disuasorias y metadatos asociados con Sentry Mode y eventos de intrusión (fecha/hora, tipo de evento).", + "Partner does not access or process other categories of data from your vehicle (e.g., detailed driving data, battery or precise location information). The authorization to send commands (such as honking the horn) is optional and is only requested if you choose to enable the Offensive Response deterrent feature.": "El Socio no accede ni procesa otras categorías de datos de su vehículo (p. ej., datos detallados de conducción, batería o información de ubicación precisa). La autorización para enviar comandos (como hacer sonar la bocina) es opcional y solo se solicita si decide activar la función disuasoria de Respuesta Ofensiva.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "El Socio solo utilizará esta información para:\n\n(a) proporcionarle funciones de monitorización y notificación relacionadas con el Sentry Mode;\n\n(b) asociar los eventos del Sentry Mode con su cuenta de usuario y su vehículo;\n\n(c) mejorar la fiabilidad y la seguridad del servicio (por ejemplo, diagnóstico de incidentes técnicos);\n\n(d) cumplir con las obligaciones legales aplicables, cuando proceda.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "El Socio mantiene salvaguardas administrativas, técnicas y físicas diseñadas para proteger los Datos Personales frente a la destrucción, pérdida, alteración, acceso, divulgación o uso accidentales, ilícitos o no autorizados, incluido el cifrado de los datos en tránsito y, cuando proceda, en reposo. El Socio solo conservará sus Datos Personales durante el tiempo necesario para proporcionarle la App y las funciones descritas anteriormente, salvo que la ley aplicable exija o autorice lo contrario o si usted solicita su supresión anticipada.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "La App se proporciona «tal cual» y «según disponibilidad», sin garantía de ningún tipo. SentryGuard y sus autores declinan toda responsabilidad por cualquier daño directo, indirecto, incidental, especial o consecuente, incluidos, entre otros, daños al vehículo, pérdida de datos o interrupciones del servicio, derivados del uso o de la imposibilidad de usar la App. El usuario asume la responsabilidad única y total del uso de la App y de cualquier acción automatizada configurada (como hacer sonar el claxon).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "Sujeto a la legislación aplicable (incluido el RGPD), usted puede tener derecho a solicitar el acceso y recibir información sobre sus Datos Personales, a actualizar y corregir inexactitudes, y a solicitar su supresión cuando se cumplan las condiciones legales. También tiene derecho a retirar su consentimiento en cualquier momento, sin coste alguno, lo que, no obstante, podría limitar o impedir el uso de la App.\n\nPara ejercer sus derechos, retirar su consentimiento u obtener más información sobre la App y el tratamiento de sus Datos Personales, puede ponerse en contacto con el Socio en: hello@sentryguard.org.", + "By accepting this consent, you also agree to receive occasional emails from Partner regarding product updates, new features, security alerts, and important service announcements. You can unsubscribe from these communications at any time via the unsubscribe link included in each email.": "Al aceptar este consentimiento, también acepta recibir correos electrónicos ocasionales del Socio sobre actualizaciones del producto, nuevas funciones, alertas de seguridad y anuncios importantes del servicio. Puede cancelar la suscripción a estas comunicaciones en cualquier momento a través del enlace para darse de baja incluido en cada correo electrónico.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Consiento la recopilación, el uso y el tratamiento de mis Datos Personales tal y como se describe anteriormente.", + "Open Tesla App": "Comprobar", + "Tesla App Redirect": "Abriendo la app de Tesla", + "Opening Tesla app...": "Abriendo la app de Tesla…", + "Could not open Tesla app automatically.": "No se ha podido abrir la app de Tesla automáticamente.", + "Redirecting to download...": "Redirigiendo a la descarga…", + "Download Tesla App": "Descargar la app de Tesla", + "iOS App Store": "App Store de iOS", + "Android Play Store": "Play Store de Android", + "Choose your platform": "Elige tu plataforma", + "user": "Usuario", + "welcomeEmailSubject": "¡Tu acceso a SentryGuard ha sido aprobado!", + "welcomeEmailBody": "
\"SentryGuard\"

¡Tu cuenta ha sido aprobada!

Hola {{name}},

¡Buenas noticias! Tu cuenta de SentryGuard ha sido aprobada. Ya puedes iniciar sesión y empezar a supervisar el Sentry Mode de tu vehículo Tesla en tiempo real.

Nuestro asistente de configuración te guiará paso a paso por el proceso.

💙 Apoya a SentryGuard

Si SentryGuard te resulta útil, considera apoyar el proyecto:

¿No tienes cuenta de GitHub? ¡No hay problema! Es 100 % gratis y se tarda 2 minutos: crea una cuenta y haz clic en ⭐ arriba. ¡Nos ayuda mucho a dar a conocer el proyecto!

¡Gracias por tu paciencia y tu interés en SentryGuard!

El equipo de SentryGuard

", + "welcomeEmailBodyNoName": "
\"SentryGuard\"

¡Tu cuenta ha sido aprobada!

Hola,

¡Buenas noticias! Tu cuenta de SentryGuard ha sido aprobada. Ya puedes iniciar sesión y empezar a supervisar el Sentry Mode de tu vehículo Tesla en tiempo real.

Nuestro asistente de configuración te guiará paso a paso por el proceso.

💙 Apoya a SentryGuard

Si SentryGuard te resulta útil, considera apoyar el proyecto:

¿No tienes cuenta de GitHub? ¡No hay problema! Es 100 % gratis y se tarda 2 minutos: crea una cuenta y haz clic en ⭐ arriba. ¡Nos ayuda mucho a dar a conocer el proyecto!

¡Gracias por tu paciencia y tu interés en SentryGuard!

El equipo de SentryGuard

", + "telegramLinkedFollowUp": "✅ ¡Perfecto! Tu Telegram ya está vinculado.\n\n📋 Próximos pasos:\n• Configura una clave virtual en la app de Tesla\n• Activa la supervisión de telemetría\n\n👉 Vuelve a SentryGuard para continuar con la configuración.", + "menuButtonStatus": "📊 Mi estado", + "menuButtonMute": "🔕 Silenciar alertas", + "menuButtonMuteActive": "🔔 Reactivar alertas", + "muteDurationTitle": "⏱ ¿Durante cuánto tiempo?", + "muteConfirmed": "🔕 Alertas silenciadas durante {{duration}}", + "muteAlreadyActive": "🔕 Las alertas están silenciadas durante {{duration}} más.\n\n¿Qué deseas hacer?", + "muteReactivate": "🔔 Reactivar ahora", + "muteChangeDuration": "⏱ Cambiar la duración", + "muteReactivated": "🔔 ¡Alertas reactivadas!", + "configStatusMutedUntil": "🔕 Silenciado durante {{duration}} más", + "configStatusTitle": "📊 Estado de la configuración", + "configStatusTelegram": "🔔 Telegram", + "configStatusTelegramLinked": "✅ Vinculado desde el {{date}}", + "configStatusVehicles": "🚗 Vehículos", + "configStatusNoVehicles": "Ningún vehículo registrado", + "configStatusTelemetryActive": "✅ Telemetría activa", + "configStatusTelemetryInactive": "❌ Telemetría inactiva", + "botUpdateV1": "🆕 ¡SentryGuard se ha actualizado!\n\nAhora puedes gestionar tus preferencias de alertas directamente desde el menú de abajo.\n\n• 📊 Mi estado — Consulta tu configuración\n• 🔕 Silenciar alertas — Pausa las notificaciones temporalmente", + "offensiveBreakIn": "🚨 Allanamiento", + "offensiveNoVehicles": "🚫 Aún no hay vehículos registrados. Activa primero la supervisión.", + "offensiveSelectVehicle": "🚗 Selecciona un vehículo:", + "offensiveChooseResponse": "🚗 {{vehicle}}\n\nElige la respuesta ofensiva:", + "offensiveDisabled": "⛔ Desactivada", + "offensiveHonk": "📯 Bocina", + "offensiveConfirmed": "✅ {{vehicle}} respuesta establecida en: {{response}}", + "offensiveTest": "🧪 Prueba", + "offensiveTestTriggered": "¡Prueba activada!", + "offensiveTestDisabled": "Activa primero una respuesta ofensiva antes de probar.", + "offensiveActivatedFor": "📯 {{vehicle}}\n\nBocina activada durante {{duration}}", + "offensiveDeactivatedAuto": "⏱️ {{vehicle}}\n\nBocina desactivada automáticamente", + "offensiveError": "❌ Error al actualizar la respuesta ofensiva", + "offensiveDisabledMsg": "📯 {{vehicle}}\n\nBocina desactivada", + "Intrusion alert": "Alerta de intrusión", + "A break-in attempt was detected.": "Se ha detectado un intento de allanamiento.", + "Sentry alert": "Alerta de Sentry", + "A Sentry event was detected.": "Se ha detectado un evento de Sentry." +} diff --git a/apps/api/src/locales/it/common.json b/apps/api/src/locales/it/common.json new file mode 100644 index 00000000..293c26b3 --- /dev/null +++ b/apps/api/src/locales/it/common.json @@ -0,0 +1,79 @@ +{ + "🧪 Test message from SentryGuard API": "🧪 Messaggio di prova inviato da SentryGuard.", + "An error occurred": "❌ Si è verificato un errore. Riprova più tardi.", + "Available commands": "📖 Comandi disponibili:\n\n/start - Avvia e collega il tuo account\n/status - Verifica lo stato del collegamento\n/help - Mostra la guida", + "Invalid or expired token": "❌ Token non valido o scaduto. Genera un nuovo link dall'applicazione.", + "No account linked": "❌ Nessun account collegato. Usa il link dell'applicazione web.", + "Sentry Mode activated - Check your vehicle!": "Evento Sentry Mode rilevato: controlla il tuo veicolo!", + "TESLA SENTRY ALERT": "ALLERTA SENTRY TESLA", + "TESLA BREAK-IN ALERT": "ALLERTA EFFRAZIONE TESLA", + "Break-in attempt detected. Check your vehicle immediately!": "Tentativo di effrazione rilevato. Controlla immediatamente il tuo veicolo!", + "This token has expired": "⏰ Questo token è scaduto. Genera un nuovo link dall'applicazione.", + "Vehicle": "Veicolo", + "Welcome to SentryGuard Bot": "🚗 Benvenuto nel bot SentryGuard!\n\nPer collegare il tuo account, usa il link fornito nell'applicazione web.", + "Your account is linked and active!": "✅ Il tuo account è collegato e attivo!", + "Your SentryGuard account has been linked successfully!": "✅ Il tuo account SentryGuard è stato collegato con successo!\n\nD'ora in poi riceverai qui gli avvisi del veicolo.", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Firmando o accettando questo modulo, acconsenti al trattamento dei tuoi Dati Personali da parte di SentryGuardOrg (\"Partner\") nell'ambito dell'applicazione del Partner denominata SentryGuard (l'\"App\").", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "Il Partner è il titolare del trattamento responsabile del trattamento dei tuoi Dati Personali nell'ambito dell'App.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Firmando o accettando questo modulo, riconosci inoltre di aver ricevuto l'Informativa sulla privacy dei clienti Tesla disponibile all'indirizzo", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(\"Informativa sulla privacy Tesla\") e acconsenti al trattamento dei Dati Personali da parte di Tesla in conformità con l'Informativa sulla privacy Tesla.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (such as event detection, Sentry Mode alerts, and break-in attempt monitoring), and the ability to configure automated deterrent actions (such as honking the horn) upon detection of these events.": "L'App consente di usufruire di funzionalità avanzate di monitoraggio e notifica basate sul Sentry Mode del proprio veicolo Tesla, tra cui l'identificazione e la registrazione di eventi di sicurezza (come il rilevamento di eventi, avvisi di Sentry Mode e il monitoraggio di tentativi di effrazione), nonché la possibilità di configurare azioni deterrenti automatizzate (come il suono del clacson) al rilevamento di tali eventi.", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events), configuration preferences for deterrent security responses, and metadata associated with Sentry Mode and break-in events (date/time, event type).": "Per fornire queste funzionalità, il Partner deve trattare alcuni dei tuoi Dati Personali, che possono includere: informazioni sul profilo (identificatore dell'account, nome visualizzato o indirizzo email, necessari per associare gli eventi al tuo account); informazioni minime sul veicolo necessarie per il funzionamento dell'App, tra cui l'identificatore del veicolo (VIN o equivalente), lo stato del Sentry Mode (attivazione, eventi rilevati), le preferenze di configurazione per le risposte di sicurezza deterrenti e i metadati associati a Sentry Mode ed eventi di effrazione (data/ora, tipo di evento).", + "Partner does not access or process other categories of data from your vehicle (e.g., detailed driving data, battery or precise location information). The authorization to send commands (such as honking the horn) is optional and is only requested if you choose to enable the Offensive Response deterrent feature.": "Il Partner non accede né tratta altre categorie di dati dal tuo veicolo (ad es. dati di guida dettagliati, batteria o informazioni sulla posizione precisa). L'autorizzazione all'invio di comandi (come il suono del clacson) è facoltativa e viene richiesta solo se scegli di abilitare la funzione deterrente Risposta offensiva.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "Il Partner utilizzerà queste informazioni esclusivamente per:\n\n(a) fornirti le funzionalità di monitoraggio e notifica relative alla Sentry Mode;\n\n(b) associare gli eventi della Sentry Mode al tuo account utente e al tuo veicolo;\n\n(c) migliorare l'affidabilità e la sicurezza del servizio (ad esempio diagnostica di incidenti tecnici);\n\n(d) adempiere agli obblighi di legge applicabili, ove pertinente.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "Il Partner adotta misure di protezione amministrative, tecniche e fisiche progettate per proteggere i Dati Personali da distruzione, perdita, alterazione, accesso, divulgazione o uso accidentali, illeciti o non autorizzati, inclusa la crittografia dei dati in transito e, ove appropriato, a riposo. Il Partner conserverà i tuoi Dati Personali solo per il tempo necessario a fornirti l'App e le funzionalità descritte sopra, salvo diversa richiesta o autorizzazione prevista dalla legge applicabile o nel caso in cui tu richieda la cancellazione anticipata.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "L'App è fornita \"così com'è\" e \"secondo disponibilità\", senza alcuna garanzia di alcun tipo. SentryGuard e i suoi autori declinano ogni responsabilità per qualsiasi danno diretto, indiretto, incidentale, speciale o consequenziale, inclusi a titolo esemplificativo ma non esaustivo i danni al veicolo, la perdita di dati o le interruzioni del servizio, derivanti dall'uso o dall'impossibilità di utilizzare l'App. L'utente si assume la piena ed esclusiva responsabilità dell'uso dell'App e di qualsiasi azione automatizzata configurata (come l'attivazione del clacson).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "Fatta salva la legge applicabile (incluso il GDPR), potresti avere il diritto di richiedere l'accesso e di ricevere informazioni sui tuoi Dati Personali, di aggiornare e correggere eventuali inesattezze e di richiederne la cancellazione quando ne ricorrano le condizioni legali. Hai inoltre il diritto di revocare il tuo consenso in qualsiasi momento, senza costi, il che può tuttavia limitare o impedire l'uso dell'App.\n\nPer esercitare i tuoi diritti, revocare il tuo consenso o ottenere maggiori informazioni sull'App e sul trattamento dei tuoi Dati Personali, puoi contattare il Partner all'indirizzo: hello@sentryguard.org.", + "By accepting this consent, you also agree to receive occasional emails from Partner regarding product updates, new features, security alerts, and important service announcements. You can unsubscribe from these communications at any time via the unsubscribe link included in each email.": "Accettando questo consenso, accetti inoltre di ricevere email occasionali dal Partner relative ad aggiornamenti di prodotto, nuove funzionalità, avvisi di sicurezza e comunicazioni di servizio importanti. Puoi annullare l'iscrizione a queste comunicazioni in qualsiasi momento tramite il link di disiscrizione incluso in ogni email.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Acconsento alla raccolta, all'uso e al trattamento dei miei Dati Personali come descritto sopra.", + "Open Tesla App": "Verifica", + "Tesla App Redirect": "Apertura dell'app Tesla", + "Opening Tesla app...": "Apertura dell'app Tesla in corso…", + "Could not open Tesla app automatically.": "Impossibile aprire automaticamente l'app Tesla.", + "Redirecting to download...": "Reindirizzamento al download…", + "Download Tesla App": "Scarica l'app Tesla", + "iOS App Store": "App Store iOS", + "Android Play Store": "Play Store Android", + "Choose your platform": "Scegli la tua piattaforma", + "user": "Utente", + "welcomeEmailSubject": "Il tuo accesso a SentryGuard è stato approvato!", + "welcomeEmailBody": "
\"SentryGuard\"

Il tuo account è stato approvato!

Ciao {{name}},

Ottime notizie! Il tuo account SentryGuard è stato approvato. Ora puoi accedere e iniziare a monitorare in tempo reale il Sentry Mode del tuo veicolo Tesla.

La nostra procedura guidata ti accompagnerà passo dopo passo nella configurazione.

💙 Sostieni SentryGuard

Se trovi SentryGuard utile, valuta di sostenere il progetto:

Non hai un account GitHub? Nessun problema! È 100% gratuito e bastano 2 minuti: crea un account e clicca su ⭐ qui sopra. Ci aiuta molto a far conoscere il progetto!

Grazie per la tua pazienza e per il tuo interesse in SentryGuard!

Il team di SentryGuard

", + "welcomeEmailBodyNoName": "
\"SentryGuard\"

Il tuo account è stato approvato!

Ciao,

Ottime notizie! Il tuo account SentryGuard è stato approvato. Ora puoi accedere e iniziare a monitorare in tempo reale il Sentry Mode del tuo veicolo Tesla.

La nostra procedura guidata ti accompagnerà passo dopo passo nella configurazione.

💙 Sostieni SentryGuard

Se trovi SentryGuard utile, valuta di sostenere il progetto:

Non hai un account GitHub? Nessun problema! È 100% gratuito e bastano 2 minuti: crea un account e clicca su ⭐ qui sopra. Ci aiuta molto a far conoscere il progetto!

Grazie per la tua pazienza e per il tuo interesse in SentryGuard!

Il team di SentryGuard

", + "telegramLinkedFollowUp": "✅ Perfetto! Il tuo Telegram è ora collegato.\n\n📋 Prossimi passaggi:\n• Configura una chiave virtuale nell'app Tesla\n• Attiva il monitoraggio della telemetria\n\n👉 Torna su SentryGuard per continuare la configurazione.", + "menuButtonStatus": "📊 Il mio stato", + "menuButtonMute": "🔕 Silenzia gli avvisi", + "menuButtonMuteActive": "🔔 Riattiva gli avvisi", + "muteDurationTitle": "⏱ Per quanto tempo?", + "muteConfirmed": "🔕 Avvisi silenziati per {{duration}}", + "muteAlreadyActive": "🔕 Gli avvisi sono silenziati per altri {{duration}}.\n\nCosa vuoi fare?", + "muteReactivate": "🔔 Riattiva ora", + "muteChangeDuration": "⏱ Cambia la durata", + "muteReactivated": "🔔 Avvisi riattivati!", + "configStatusMutedUntil": "🔕 Silenziato per altri {{duration}}", + "configStatusTitle": "📊 Stato della configurazione", + "configStatusTelegram": "🔔 Telegram", + "configStatusTelegramLinked": "✅ Collegato dal {{date}}", + "configStatusVehicles": "🚗 Veicoli", + "configStatusNoVehicles": "Nessun veicolo registrato", + "configStatusTelemetryActive": "✅ Telemetria attiva", + "configStatusTelemetryInactive": "❌ Telemetria inattiva", + "botUpdateV1": "🆕 SentryGuard è stato aggiornato!\n\nOra puoi gestire le tue preferenze di avviso direttamente dal menu qui sotto.\n\n• 📊 Il mio stato — Visualizza la tua configurazione\n• 🔕 Silenzia gli avvisi — Sospendi temporaneamente le notifiche", + "offensiveBreakIn": "🚨 Effrazione", + "offensiveNoVehicles": "🚫 Nessun veicolo ancora registrato. Attiva prima il monitoraggio.", + "offensiveSelectVehicle": "🚗 Seleziona un veicolo:", + "offensiveChooseResponse": "🚗 {{vehicle}}\n\nScegli la risposta offensiva:", + "offensiveDisabled": "⛔ Disattivata", + "offensiveHonk": "📯 Clacson", + "offensiveConfirmed": "✅ {{vehicle}} risposta impostata su: {{response}}", + "offensiveTest": "🧪 Prova", + "offensiveTestTriggered": "Prova avviata!", + "offensiveTestDisabled": "Attiva prima una risposta offensiva per poterla provare.", + "offensiveActivatedFor": "📯 {{vehicle}}\n\nClacson attivato per {{duration}}", + "offensiveDeactivatedAuto": "⏱️ {{vehicle}}\n\nClacson disattivato automaticamente", + "offensiveError": "❌ Errore durante l'aggiornamento della risposta offensiva", + "offensiveDisabledMsg": "📯 {{vehicle}}\n\nClacson disattivato", + "Intrusion alert": "Allerta intrusione", + "A break-in attempt was detected.": "È stato rilevato un tentativo di effrazione.", + "Sentry alert": "Allerta Sentry", + "A Sentry event was detected.": "È stato rilevato un evento Sentry." +} diff --git a/apps/api/src/locales/nl/common.json b/apps/api/src/locales/nl/common.json new file mode 100644 index 00000000..5784f409 --- /dev/null +++ b/apps/api/src/locales/nl/common.json @@ -0,0 +1,79 @@ +{ + "🧪 Test message from SentryGuard API": "🧪 Testbericht verzonden vanuit SentryGuard.", + "An error occurred": "❌ Er is een fout opgetreden. Probeer het later opnieuw.", + "Available commands": "📖 Beschikbare commando's:\n\n/start - Starten en uw account koppelen\n/status - Koppelingsstatus controleren\n/help - Help weergeven", + "Invalid or expired token": "❌ Ongeldig of verlopen token. Genereer een nieuwe link in de app.", + "No account linked": "❌ Geen account gekoppeld. Gebruik de link uit de web-app.", + "Sentry Mode activated - Check your vehicle!": "Sentry-gebeurtenis gedetecteerd – Controleer uw voertuig!", + "TESLA SENTRY ALERT": "TESLA SENTRY-WAARSCHUWING", + "TESLA BREAK-IN ALERT": "TESLA INBRAAKWAARSCHUWING", + "Break-in attempt detected. Check your vehicle immediately!": "Inbraakpoging gedetecteerd. Controleer uw voertuig onmiddellijk!", + "This token has expired": "⏰ Dit token is verlopen. Genereer een nieuwe link in de app.", + "Vehicle": "Voertuig", + "Welcome to SentryGuard Bot": "🚗 Welkom bij de SentryGuard Bot!\n\nGebruik de link in de web-app om uw account te koppelen.", + "Your account is linked and active!": "✅ Uw account is gekoppeld en actief!", + "Your SentryGuard account has been linked successfully!": "✅ Uw SentryGuard-account is succesvol gekoppeld!\n\nU ontvangt voortaan voertuigwaarschuwingen hier.", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Door dit formulier te ondertekenen of te accepteren, stemt u in met de verwerking van uw Persoonsgegevens door SentryGuardOrg (\"Partner\") in het kader van de applicatie van de Partner met de titel SentryGuard (de \"App\").", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "De Partner is de verwerkingsverantwoordelijke die verantwoordelijk is voor de verwerking van uw Persoonsgegevens in het kader van de App.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Door dit formulier te ondertekenen of te accepteren, bevestigt u tevens de ontvangst van de Tesla Privacyverklaring voor klanten, beschikbaar op", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(\"Tesla Privacyverklaring\") en stemt u in met de verwerking van Persoonsgegevens door Tesla in overeenstemming met de Tesla Privacyverklaring.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (such as event detection, Sentry Mode alerts, and break-in attempt monitoring), and the ability to configure automated deterrent actions (such as honking the horn) upon detection of these events.": "De App stelt u in staat te profiteren van geavanceerde bewakings- en meldingsfuncties op basis van de Sentry Mode van uw Tesla-voertuig, waaronder de identificatie en registratie van beveiligingsgebeurtenissen (zoals gebeurtenisdetectie, Sentry Mode-waarschuwingen en bewaking van inbraakpogingen), en de mogelijkheid om bij detectie van deze gebeurtenissen geautomatiseerde afschrikkende acties (zoals claxonneren) te configureren.", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events), configuration preferences for deterrent security responses, and metadata associated with Sentry Mode and break-in events (date/time, event type).": "Om deze functies te kunnen bieden, moet de Partner enkele van uw Persoonsgegevens verwerken, waaronder: profielinformatie (account-ID, weergavenaam of e-mailadres, noodzakelijk om gebeurtenissen aan uw account te koppelen); minimale voertuiginformatie die nodig is voor de werking van de App, inclusief voertuigidentificatie (VIN of equivalent), Sentry Mode-status (activering, gedetecteerde gebeurtenissen), configuratievoorkeuren voor afschrikkende beveiligingsreacties en metadata gekoppeld aan Sentry Mode- en inbraakgebeurtenissen (datum/tijd, type gebeurtenis).", + "Partner does not access or process other categories of data from your vehicle (e.g., detailed driving data, battery or precise location information). The authorization to send commands (such as honking the horn) is optional and is only requested if you choose to enable the Offensive Response deterrent feature.": "De Partner heeft geen toegang tot andere categorieën gegevens van uw voertuig en verwerkt deze niet (bijv. gedetailleerde rijgegevens, batterij- of exacte locatie-informatie). De machtiging om opdrachten te verzenden (zoals claxonneren) is optioneel en wordt alleen gevraagd als u ervoor kiest om de afschrikkende functie Offensieve Reactie in te schakelen.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "De Partner zal deze informatie uitsluitend gebruiken voor:\n\n(a) het bieden van monitoring- en meldingsfuncties die verband houden met Sentry Mode;\n\n(b) het koppelen van Sentry Mode-gebeurtenissen aan uw gebruikersaccount en voertuig;\n\n(c) het verbeteren van de betrouwbaarheid en beveiliging van de dienst (bijv. diagnose van technische incidenten);\n\n(d) het naleven van toepasselijke wettelijke verplichtingen, waar van toepassing.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "De Partner handhaaft administratieve, technische en fysieke beveiligingsmaatregelen die zijn ontworpen om Persoonsgegevens te beschermen tegen accidentele, onrechtmatige of ongeoorloofde vernietiging, verlies, wijziging, toegang, openbaarmaking of gebruik, met inbegrip van versleuteling van gegevens tijdens de overdracht en, waar gepast, in rust. De Partner bewaart uw Persoonsgegevens alleen zo lang als nodig is om u de App en de hierboven beschreven functies te bieden, tenzij anders vereist of toegestaan door toepasselijk recht of indien u om vroegtijdige verwijdering verzoekt.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "De App wordt geleverd \"as is\" en \"zoals beschikbaar\", zonder enige garantie van welke aard dan ook. SentryGuard en zijn auteurs wijzen alle aansprakelijkheid af voor enige directe, indirecte, incidentele, bijzondere of gevolgschade, met inbegrip van maar niet beperkt tot schade aan het voertuig, verlies van gegevens of serviceonderbrekingen, voortvloeiend uit het gebruik van of het onvermogen om de App te gebruiken. De gebruiker draagt als enige de volledige verantwoordelijkheid voor het gebruik van de App en alle geconfigureerde geautomatiseerde acties (zoals het laten klinken van de claxon).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "Onder voorbehoud van toepasselijk recht (waaronder de AVG) kunt u het recht hebben om toegang tot uw Persoonsgegevens te vragen en informatie daarover te ontvangen, onjuistheden bij te werken en te corrigeren, en om verwijdering te verzoeken wanneer aan de wettelijke voorwaarden is voldaan. U hebt tevens het recht om uw toestemming op elk moment kosteloos in te trekken, wat het gebruik van de App echter kan beperken of verhinderen.\n\nOm uw rechten uit te oefenen, uw toestemming in te trekken of meer informatie te verkrijgen over de App en de verwerking van uw Persoonsgegevens, kunt u contact opnemen met de Partner via: hello@sentryguard.org.", + "By accepting this consent, you also agree to receive occasional emails from Partner regarding product updates, new features, security alerts, and important service announcements. You can unsubscribe from these communications at any time via the unsubscribe link included in each email.": "Door deze toestemming te accepteren, stemt u er tevens mee in om af en toe e-mails van de Partner te ontvangen met betrekking tot productupdates, nieuwe functies, beveiligingswaarschuwingen en belangrijke servicemededelingen. U kunt zich op elk gewenst moment afmelden voor deze communicatie via de uitschrijflink die in elke e-mail is opgenomen.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Ik stem in met de verzameling, het gebruik en de verwerking van mijn Persoonsgegevens zoals hierboven beschreven.", + "Open Tesla App": "Controleren", + "Tesla App Redirect": "Tesla-app wordt geopend", + "Opening Tesla app...": "Tesla-app wordt geopend …", + "Could not open Tesla app automatically.": "Kan de Tesla-app niet automatisch openen.", + "Redirecting to download...": "Doorverwijzen naar download …", + "Download Tesla App": "Tesla-app downloaden", + "iOS App Store": "iOS App Store", + "Android Play Store": "Android Play Store", + "Choose your platform": "Kies uw platform", + "user": "Gebruiker", + "welcomeEmailSubject": "Uw toegang tot SentryGuard is goedgekeurd!", + "welcomeEmailBody": "
\"SentryGuard\"

Uw account is goedgekeurd!

Hallo {{name}},

Goed nieuws! Uw SentryGuard-account is goedgekeurd. U kunt nu inloggen en de Sentry Mode van uw Tesla-voertuig in realtime monitoren.

Onze installatiewizard begeleidt u stap voor stap door de configuratie.

💙 Steun SentryGuard

Als u SentryGuard nuttig vindt, overweeg dan om het project te steunen:

Geen GitHub-account? Geen probleem! Het is 100% gratis en kost 2 minuten: maak een account aan en klik hierboven op ⭐. Het helpt ons enorm om het project bekend te maken!

Bedankt voor uw geduld en uw interesse in SentryGuard!

Het SentryGuard-team

", + "welcomeEmailBodyNoName": "
\"SentryGuard\"

Uw account is goedgekeurd!

Hallo,

Goed nieuws! Uw SentryGuard-account is goedgekeurd. U kunt nu inloggen en de Sentry Mode van uw Tesla-voertuig in realtime monitoren.

Onze installatiewizard begeleidt u stap voor stap door de configuratie.

💙 Steun SentryGuard

Als u SentryGuard nuttig vindt, overweeg dan om het project te steunen:

Geen GitHub-account? Geen probleem! Het is 100% gratis en kost 2 minuten: maak een account aan en klik hierboven op ⭐. Het helpt ons enorm om het project bekend te maken!

Bedankt voor uw geduld en uw interesse in SentryGuard!

Het SentryGuard-team

", + "telegramLinkedFollowUp": "✅ Perfect! Uw Telegram is nu gekoppeld.\n\n📋 Volgende stappen:\n• Stel een virtuele sleutel in de Tesla-app in\n• Schakel telemetriebewaking in\n\n👉 Ga terug naar SentryGuard om de configuratie voort te zetten.", + "menuButtonStatus": "📊 Mijn status", + "menuButtonMute": "🔕 Waarschuwingen dempen", + "menuButtonMuteActive": "🔔 Waarschuwingen heractiveren", + "muteDurationTitle": "⏱ Voor hoelang?", + "muteConfirmed": "🔕 Waarschuwingen gedempt voor {{duration}}", + "muteAlreadyActive": "🔕 De waarschuwingen zijn nog {{duration}} gedempt.\n\nWat wilt u doen?", + "muteReactivate": "🔔 Nu heractiveren", + "muteChangeDuration": "⏱ Duur wijzigen", + "muteReactivated": "🔔 Waarschuwingen geheractiveerd!", + "configStatusMutedUntil": "🔕 Nog {{duration}} gedempt", + "configStatusTitle": "📊 Configuratiestatus", + "configStatusTelegram": "🔔 Telegram", + "configStatusTelegramLinked": "✅ Gekoppeld sinds {{date}}", + "configStatusVehicles": "🚗 Voertuigen", + "configStatusNoVehicles": "Geen voertuigen geregistreerd", + "configStatusTelemetryActive": "✅ Telemetrie actief", + "configStatusTelemetryInactive": "❌ Telemetrie inactief", + "botUpdateV1": "🆕 SentryGuard is bijgewerkt!\n\nU kunt uw waarschuwingsvoorkeuren nu rechtstreeks beheren via het onderstaande menu.\n\n• 📊 Mijn status — Bekijk uw configuratie\n• 🔕 Waarschuwingen dempen — Meldingen tijdelijk stilleggen", + "offensiveBreakIn": "🚨 Inbraak", + "offensiveNoVehicles": "🚫 Nog geen voertuigen geregistreerd. Schakel eerst de bewaking in.", + "offensiveSelectVehicle": "🚗 Selecteer een voertuig:", + "offensiveChooseResponse": "🚗 {{vehicle}}\n\nKies de offensieve reactie:", + "offensiveDisabled": "⛔ Uitgeschakeld", + "offensiveHonk": "📯 Claxon", + "offensiveConfirmed": "✅ {{vehicle}} reactie ingesteld op: {{response}}", + "offensiveTest": "🧪 Test", + "offensiveTestTriggered": "Test geactiveerd!", + "offensiveTestDisabled": "Schakel eerst een offensieve reactie in voordat u test.", + "offensiveActivatedFor": "📯 {{vehicle}}\n\nClaxon geactiveerd voor {{duration}}", + "offensiveDeactivatedAuto": "⏱️ {{vehicle}}\n\nClaxon automatisch gedeactiveerd", + "offensiveError": "❌ Fout bij het bijwerken van de offensieve reactie", + "offensiveDisabledMsg": "📯 {{vehicle}}\n\nClaxon gedeactiveerd", + "Intrusion alert": "Inbraakwaarschuwing", + "A break-in attempt was detected.": "Er is een inbraakpoging gedetecteerd.", + "Sentry alert": "Sentry-waarschuwing", + "A Sentry event was detected.": "Er is een Sentry-gebeurtenis gedetecteerd." +} diff --git a/apps/api/src/locales/no/common.json b/apps/api/src/locales/no/common.json new file mode 100644 index 00000000..0c03a5b3 --- /dev/null +++ b/apps/api/src/locales/no/common.json @@ -0,0 +1,79 @@ +{ + "🧪 Test message from SentryGuard API": "🧪 Testmelding sendt fra SentryGuard.", + "An error occurred": "❌ Det oppstod en feil. Prøv igjen senere.", + "Available commands": "📖 Tilgjengelige kommandoer:\n\n/start - Start og koble til kontoen din\n/status - Sjekk tilkoblingsstatus\n/help - Vis hjelp", + "Invalid or expired token": "❌ Ugyldig eller utløpt token. Generer en ny lenke i appen.", + "No account linked": "❌ Ingen konto tilkoblet. Bruk lenken fra nettappen.", + "Sentry Mode activated - Check your vehicle!": "Sentry-hendelse oppdaget – Sjekk kjøretøyet ditt!", + "TESLA SENTRY ALERT": "TESLA SENTRY-VARSEL", + "TESLA BREAK-IN ALERT": "TESLA INNBRUDDSVARSEL", + "Break-in attempt detected. Check your vehicle immediately!": "Innbruddsforsøk oppdaget. Sjekk kjøretøyet ditt umiddelbart!", + "This token has expired": "⏰ Dette tokenet har utløpt. Generer en ny lenke i appen.", + "Vehicle": "Kjøretøy", + "Welcome to SentryGuard Bot": "🚗 Velkommen til SentryGuard-boten!\n\nFor å koble til kontoen din, bruk lenken i nettappen.", + "Your account is linked and active!": "✅ Kontoen din er tilkoblet og aktiv!", + "Your SentryGuard account has been linked successfully!": "✅ SentryGuard-kontoen din er koblet til!\n\nDu vil nå motta kjøretøyvarsler her.", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Ved å signere eller godta dette skjemaet samtykker du til at SentryGuardOrg («Partneren») behandler personopplysningene dine i forbindelse med Partnerens applikasjon med tittelen SentryGuard («Appen»).", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "Partneren er behandlingsansvarlig for behandlingen av personopplysningene dine i forbindelse med Appen.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Ved å signere eller godta dette skjemaet bekrefter du også at du har mottatt Teslas personvernerklæring for kunder, tilgjengelig på", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(«Teslas personvernerklæring») og samtykker til at Tesla behandler personopplysninger i samsvar med Teslas personvernerklæring.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (such as event detection, Sentry Mode alerts, and break-in attempt monitoring), and the ability to configure automated deterrent actions (such as honking the horn) upon detection of these events.": "Appen lar deg dra nytte av avanserte overvåkings- og varslingsfunksjoner basert på Tesla-kjøretøyets Sentry Mode, inkludert identifisering og logging av sikkerhetshendelser (som hendelsesdeteksjon, Sentry Mode-varsler og overvåking av innbruddsforsøk), samt muligheten til å konfigurere automatiserte avskrekkende tiltak (som tuting med hornet) ved påvisning av disse hendelsene.", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events), configuration preferences for deterrent security responses, and metadata associated with Sentry Mode and break-in events (date/time, event type).": "For å levere disse funksjonene må partneren behandle enkelte av personopplysningene dine, som kan omfatte: profilinformasjon (kontoidentifikator, visningsnavn eller e-postadresse, nødvendig for å knytte hendelser til kontoen din); minimal kjøretøyinformasjon som er nødvendig for at appen skal fungere, inkludert understellsnummer (VIN eller tilsvarende), status for Sentry Mode (aktivering, oppdagede hendelser), konfigurasjonspreferanser for avskrekkende sikkerhetsresponser og metadata knyttet til Sentry Mode- og innbruddshendelser (dato/klokkeslett, hendelsestype).", + "Partner does not access or process other categories of data from your vehicle (e.g., detailed driving data, battery or precise location information). The authorization to send commands (such as honking the horn) is optional and is only requested if you choose to enable the Offensive Response deterrent feature.": "Partneren har ikke tilgang til eller behandler andre kategorier av data fra kjøretøyet ditt (f.eks. detaljerte kjøredata, batteri- eller nøyaktig posisjonsinformasjon). Tillatelsen til å sende kommandoer (som å tute med hornet) er valgfri og etterspørres kun dersom du velger å aktivere den avskrekkende funksjonen Offensiv respons.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "Partneren vil kun bruke denne informasjonen til:\n\n(a) å gi deg overvåkings- og varslingsfunksjoner knyttet til Sentry Mode;\n\n(b) å knytte Sentry Mode-hendelser til brukerkontoen og kjøretøyet ditt;\n\n(c) å forbedre tjenestens pålitelighet og sikkerhet (f.eks. diagnostikk av tekniske hendelser);\n\n(d) å overholde gjeldende juridiske forpliktelser, der det er relevant.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "Partneren opprettholder administrative, tekniske og fysiske sikkerhetstiltak utformet for å beskytte personopplysninger mot tilfeldig, ulovlig eller uautorisert ødeleggelse, tap, endring, tilgang, utlevering eller bruk, inkludert kryptering av data under overføring og, der det er hensiktsmessig, i hvile. Partneren vil kun oppbevare personopplysningene dine så lenge det er nødvendig for å levere Appen og funksjonene beskrevet ovenfor, med mindre annet kreves eller tillates av gjeldende lov, eller hvis du ber om tidlig sletting.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "Appen leveres «som den er» og «slik den er tilgjengelig», uten noen form for garanti. SentryGuard og dets opphavspersoner fraskriver seg alt ansvar for direkte, indirekte, tilfeldige, spesielle eller følgeskader, inkludert, men ikke begrenset til, skade på kjøretøy, tap av data eller tjenesteavbrudd, som oppstår som følge av bruk av eller manglende evne til å bruke Appen. Brukeren påtar seg det fulle og hele ansvaret for bruken av Appen og enhver konfigurert automatisert handling (for eksempel å tute med hornet).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "I henhold til gjeldende lov (inkludert GDPR) kan du ha rett til å be om innsyn og motta informasjon om personopplysningene dine, oppdatere og rette unøyaktigheter, og be om sletting når de juridiske vilkårene er oppfylt. Du har også rett til å trekke tilbake samtykket ditt når som helst, uten kostnad, noe som imidlertid kan begrense eller hindre bruken av Appen.\n\nFor å utøve rettighetene dine, trekke tilbake samtykket ditt eller få mer informasjon om Appen og behandlingen av personopplysningene dine, kan du kontakte Partneren på: hello@sentryguard.org.", + "By accepting this consent, you also agree to receive occasional emails from Partner regarding product updates, new features, security alerts, and important service announcements. You can unsubscribe from these communications at any time via the unsubscribe link included in each email.": "Ved å godta dette samtykket godtar du også å motta sporadiske e-poster fra partneren angående produktoppdateringer, nye funksjoner, sikkerhetsvarsler og viktige tjenestekunngjøringer. Du kan når som helst melde deg av disse meldingene via avmeldingslenken som er inkludert i hver e-post.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Jeg samtykker til innsamling, bruk og behandling av mine personopplysninger som beskrevet ovenfor.", + "Open Tesla App": "Sjekk", + "Tesla App Redirect": "Åpner Tesla-appen", + "Opening Tesla app...": "Åpner Tesla-appen …", + "Could not open Tesla app automatically.": "Kunne ikke åpne Tesla-appen automatisk.", + "Redirecting to download...": "Videresender til nedlasting …", + "Download Tesla App": "Last ned Tesla-appen", + "iOS App Store": "iOS App Store", + "Android Play Store": "Android Play Store", + "Choose your platform": "Velg plattformen din", + "user": "Bruker", + "welcomeEmailSubject": "Din tilgang til SentryGuard er godkjent!", + "welcomeEmailBody": "
\"SentryGuard\"

Kontoen din er godkjent!

Hei {{name}},

Gode nyheter! SentryGuard-kontoen din er godkjent. Du kan nå logge inn og begynne å overvåke Sentry Mode på Tesla-kjøretøyet ditt i sanntid.

Konfigurasjonsveiviseren vår leder deg gjennom oppsettet trinn for trinn.

💙 Støtt SentryGuard

Hvis du synes SentryGuard er nyttig, vurder å støtte prosjektet:

Ingen GitHub-konto? Ingen problem! Det er 100 % gratis og tar 2 minutter: opprett en konto og klikk på ⭐ ovenfor. Det hjelper oss veldig med å spre ordet!

Takk for tålmodigheten og interessen din for SentryGuard!

SentryGuard-teamet

", + "welcomeEmailBodyNoName": "
\"SentryGuard\"

Kontoen din er godkjent!

Hei,

Gode nyheter! SentryGuard-kontoen din er godkjent. Du kan nå logge inn og begynne å overvåke Sentry Mode på Tesla-kjøretøyet ditt i sanntid.

Konfigurasjonsveiviseren vår leder deg gjennom oppsettet trinn for trinn.

💙 Støtt SentryGuard

Hvis du synes SentryGuard er nyttig, vurder å støtte prosjektet:

Ingen GitHub-konto? Ingen problem! Det er 100 % gratis og tar 2 minutter: opprett en konto og klikk på ⭐ ovenfor. Det hjelper oss veldig med å spre ordet!

Takk for tålmodigheten og interessen din for SentryGuard!

SentryGuard-teamet

", + "telegramLinkedFollowUp": "✅ Perfekt! Telegram er nå tilkoblet.\n\n📋 Neste steg:\n• Sett opp en virtuell nøkkel i Tesla-appen\n• Aktiver telemetriovervåking\n\n👉 Gå tilbake til SentryGuard for å fortsette oppsettet.", + "menuButtonStatus": "📊 Min status", + "menuButtonMute": "🔕 Demp varsler", + "menuButtonMuteActive": "🔔 Aktiver varsler igjen", + "muteDurationTitle": "⏱ Hvor lenge?", + "muteConfirmed": "🔕 Varsler dempet i {{duration}}", + "muteAlreadyActive": "🔕 Varslene er dempet i {{duration}} til.\n\nHva vil du gjøre?", + "muteReactivate": "🔔 Aktiver nå", + "muteChangeDuration": "⏱ Endre varighet", + "muteReactivated": "🔔 Varsler aktivert igjen!", + "configStatusMutedUntil": "🔕 Dempet i {{duration}} til", + "configStatusTitle": "📊 Konfigurasjonsstatus", + "configStatusTelegram": "🔔 Telegram", + "configStatusTelegramLinked": "✅ Tilkoblet siden {{date}}", + "configStatusVehicles": "🚗 Kjøretøy", + "configStatusNoVehicles": "Ingen kjøretøy registrert", + "configStatusTelemetryActive": "✅ Telemetri aktiv", + "configStatusTelemetryInactive": "❌ Telemetri inaktiv", + "botUpdateV1": "🆕 SentryGuard er oppdatert!\n\nDu kan nå administrere varselinnstillingene dine direkte fra menyen nedenfor.\n\n• 📊 Min status — Se konfigurasjonen din\n• 🔕 Demp varsler — Stopp varsler midlertidig", + "offensiveBreakIn": "🚨 Innbrudd", + "offensiveNoVehicles": "🚫 Ingen kjøretøy registrert ennå. Aktiver overvåking først.", + "offensiveSelectVehicle": "🚗 Velg et kjøretøy:", + "offensiveChooseResponse": "🚗 {{vehicle}}\n\nVelg den offensive responsen:", + "offensiveDisabled": "⛔ Deaktivert", + "offensiveHonk": "📯 Tut", + "offensiveConfirmed": "✅ {{vehicle}} respons satt til: {{response}}", + "offensiveTest": "🧪 Test", + "offensiveTestTriggered": "Test utløst!", + "offensiveTestDisabled": "Aktiver en offensiv respons før du tester.", + "offensiveActivatedFor": "📯 {{vehicle}}\n\nHorn aktivert i {{duration}}", + "offensiveDeactivatedAuto": "⏱️ {{vehicle}}\n\nHorn deaktivert automatisk", + "offensiveError": "❌ Feil ved oppdatering av offensiv respons", + "offensiveDisabledMsg": "📯 {{vehicle}}\n\nHorn deaktivert", + "Intrusion alert": "Innbruddsvarsel", + "A break-in attempt was detected.": "Et innbruddsforsøk ble oppdaget.", + "Sentry alert": "Sentry-varsel", + "A Sentry event was detected.": "En Sentry-hendelse ble oppdaget." +} diff --git a/apps/api/src/locales/sv/common.json b/apps/api/src/locales/sv/common.json new file mode 100644 index 00000000..63c9f8b1 --- /dev/null +++ b/apps/api/src/locales/sv/common.json @@ -0,0 +1,79 @@ +{ + "🧪 Test message from SentryGuard API": "🧪 Testmeddelande skickat från SentryGuard.", + "An error occurred": "❌ Ett fel uppstod. Försök igen senare.", + "Available commands": "📖 Tillgängliga kommandon:\n\n/start - Starta och länka ditt konto\n/status - Kontrollera länkningsstatus\n/help - Visa hjälp", + "Invalid or expired token": "❌ Ogiltig eller utgången token. Generera en ny länk i appen.", + "No account linked": "❌ Inget konto länkat. Använd länken från webbappen.", + "Sentry Mode activated - Check your vehicle!": "Sentry-händelse upptäckt – kontrollera ditt fordon!", + "TESLA SENTRY ALERT": "TESLA SENTRY-LARM", + "TESLA BREAK-IN ALERT": "TESLA INBROTTSLARM", + "Break-in attempt detected. Check your vehicle immediately!": "Inbrottsförsök upptäckt. Kontrollera ditt fordon omedelbart!", + "This token has expired": "⏰ Denna token har gått ut. Generera en ny länk i appen.", + "Vehicle": "Fordon", + "Welcome to SentryGuard Bot": "🚗 Välkommen till SentryGuard-boten!\n\nFör att länka ditt konto, använd länken i webbappen.", + "Your account is linked and active!": "✅ Ditt konto är länkat och aktivt!", + "Your SentryGuard account has been linked successfully!": "✅ Ditt SentryGuard-konto har länkats!\n\nDu kommer nu att få fordonslarm här.", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Genom att underteckna eller godkänna detta formulär samtycker du till att SentryGuardOrg (\"Partnern\") behandlar dina personuppgifter inom ramen för Partnerns applikation med titeln SentryGuard (\"Appen\").", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "Partnern är den personuppgiftsansvarige som ansvarar för behandlingen av dina personuppgifter inom ramen för Appen.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Genom att underteckna eller godkänna detta formulär bekräftar du även att du tagit del av Teslas integritetsmeddelande för kunder, som finns på", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(\"Teslas integritetsmeddelande\") och samtycker till att Tesla behandlar dina personuppgifter i enlighet med Teslas integritetsmeddelande.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (such as event detection, Sentry Mode alerts, and break-in attempt monitoring), and the ability to configure automated deterrent actions (such as honking the horn) upon detection of these events.": "Appen gör det möjligt för dig att dra nytta av avancerade övervaknings- och aviseringsfunktioner baserade på ditt Tesla-fordons Sentry Mode, inklusive identifiering och loggning av säkerhetshändelser (såsom händelsedetektering, Sentry Mode-larm och övervakning av inbrottsförsök), samt möjligheten att konfigurera automatiserade avskräckande åtgärder (såsom att tuta med signalhornet) vid upptäckt av dessa händelser.", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events), configuration preferences for deterrent security responses, and metadata associated with Sentry Mode and break-in events (date/time, event type).": "För att tillhandahålla dessa funktioner måste partnern behandla vissa av dina personuppgifter, vilket kan omfatta: profilinformation (kontoidentifierare, visningsnamn eller e-postadress, nödvändigt för att associera händelser med ditt konto); minimal fordonsinformation som krävs för att appen ska fungera, inklusive fordonsidentifierare (VIN eller motsvarande), Sentry Mode-status (aktivering, upptäckta händelser), konfigurationsinställningar för avskräckande säkerhetsåtgärder samt metadata kopplade till Sentry Mode- och inbrottshändelser (datum/tid, händelsetyp).", + "Partner does not access or process other categories of data from your vehicle (e.g., detailed driving data, battery or precise location information). The authorization to send commands (such as honking the horn) is optional and is only requested if you choose to enable the Offensive Response deterrent feature.": "Partnern har inte åtkomst till och behandlar inte andra datakategorier från ditt fordon (t.ex. detaljerade kördata, batteri- eller exakt platsinformation). Behörigheten att skicka kommandon (som att tuta med signalhornet) är valfri och begärs endast om du väljer att aktivera den avskräckande funktionen Offensiv respons.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "Partnern använder denna information enbart för att:\n\n(a) tillhandahålla dig övervaknings- och aviseringsfunktioner kopplade till Sentry Mode;\n\n(b) koppla Sentry Mode-händelser till ditt användarkonto och fordon;\n\n(c) förbättra tjänstens tillförlitlighet och säkerhet (t.ex. diagnostik av tekniska incidenter);\n\n(d) uppfylla tillämpliga rättsliga skyldigheter, i förekommande fall.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "Partnern upprätthåller administrativa, tekniska och fysiska skyddsåtgärder som är utformade för att skydda personuppgifter mot oavsiktlig, olaglig eller obehörig förstörelse, förlust, ändring, åtkomst, utlämnande eller användning, inklusive kryptering av data under överföring och, där så är lämpligt, i vila. Partnern behåller dina personuppgifter endast så länge som är nödvändigt för att tillhandahålla dig Appen och de funktioner som beskrivs ovan, om inte annat krävs eller tillåts enligt tillämplig lag eller om du begär tidig radering.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "Appen tillhandahålls \"i befintligt skick\" och \"i mån av tillgänglighet\", utan någon som helst garanti. SentryGuard och dess upphovsmän frånsäger sig allt ansvar för direkta, indirekta, oförutsedda, särskilda eller följdskador, inklusive men inte begränsat till fordonsskador, dataförlust eller avbrott i tjänsten, som uppstår till följd av användning av eller oförmåga att använda Appen. Användaren tar fullt och ensamt ansvar för användningen av Appen och eventuella konfigurerade automatiska åtgärder (såsom att tuta med signalhornet).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "Med förbehåll för tillämplig lag (inklusive GDPR) kan du ha rätt att begära åtkomst till och få information om dina personuppgifter, uppdatera och rätta felaktigheter samt begära radering när de rättsliga villkoren är uppfyllda. Du har också rätt att när som helst återkalla ditt samtycke, utan kostnad, vilket dock kan begränsa eller förhindra användningen av Appen.\n\nFör att utöva dina rättigheter, återkalla ditt samtycke eller få mer information om Appen och behandlingen av dina personuppgifter kan du kontakta Partnern på: hello@sentryguard.org.", + "By accepting this consent, you also agree to receive occasional emails from Partner regarding product updates, new features, security alerts, and important service announcements. You can unsubscribe from these communications at any time via the unsubscribe link included in each email.": "Genom att godkänna detta samtycke samtycker du även till att ta emot enstaka e-postmeddelanden från partnern gällande produktuppdateringar, nya funktioner, säkerhetsvarningar och viktiga servicemeddelanden. Du kan när som helst avbryta prenumerationen på dessa meddelanden via avregistreringslänken som finns i varje e-postmeddelande.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Jag samtycker till insamling, användning och behandling av mina personuppgifter enligt beskrivningen ovan.", + "Open Tesla App": "Kontrollera", + "Tesla App Redirect": "Öppnar Tesla-appen", + "Opening Tesla app...": "Öppnar Tesla-appen …", + "Could not open Tesla app automatically.": "Det gick inte att öppna Tesla-appen automatiskt.", + "Redirecting to download...": "Omdirigerar till nedladdning …", + "Download Tesla App": "Ladda ner Tesla-appen", + "iOS App Store": "iOS App Store", + "Android Play Store": "Android Play Store", + "Choose your platform": "Välj din plattform", + "user": "Användare", + "welcomeEmailSubject": "Din åtkomst till SentryGuard har godkänts!", + "welcomeEmailBody": "
\"SentryGuard\"

Ditt konto har godkänts!

Hej {{name}},

Goda nyheter! Ditt SentryGuard-konto har godkänts. Du kan nu logga in och börja övervaka Sentry Mode på ditt Tesla-fordon i realtid.

Vår installationsguide leder dig steg för steg genom konfigurationen.

💙 Stöd SentryGuard

Om du tycker att SentryGuard är användbart, överväg att stödja projektet:

Inget GitHub-konto? Inga problem! Det är 100 % gratis och tar 2 minuter: skapa ett konto och klicka på ⭐ ovan. Det hjälper oss verkligen att sprida ordet!

Tack för ditt tålamod och ditt intresse för SentryGuard!

SentryGuard-teamet

", + "welcomeEmailBodyNoName": "
\"SentryGuard\"

Ditt konto har godkänts!

Hej,

Goda nyheter! Ditt SentryGuard-konto har godkänts. Du kan nu logga in och börja övervaka Sentry Mode på ditt Tesla-fordon i realtid.

Vår installationsguide leder dig steg för steg genom konfigurationen.

💙 Stöd SentryGuard

Om du tycker att SentryGuard är användbart, överväg att stödja projektet:

Inget GitHub-konto? Inga problem! Det är 100 % gratis och tar 2 minuter: skapa ett konto och klicka på ⭐ ovan. Det hjälper oss verkligen att sprida ordet!

Tack för ditt tålamod och ditt intresse för SentryGuard!

SentryGuard-teamet

", + "telegramLinkedFollowUp": "✅ Perfekt! Ditt Telegram är nu länkat.\n\n📋 Nästa steg:\n• Konfigurera en virtuell nyckel i Tesla-appen\n• Aktivera telemetriövervakning\n\n👉 Gå tillbaka till SentryGuard för att fortsätta konfigurationen.", + "menuButtonStatus": "📊 Min status", + "menuButtonMute": "🔕 Tysta larm", + "menuButtonMuteActive": "🔔 Återaktivera larm", + "muteDurationTitle": "⏱ Hur länge?", + "muteConfirmed": "🔕 Larm tystade i {{duration}}", + "muteAlreadyActive": "🔕 Larmen är tystade i {{duration}} till.\n\nVad vill du göra?", + "muteReactivate": "🔔 Återaktivera nu", + "muteChangeDuration": "⏱ Ändra varaktighet", + "muteReactivated": "🔔 Larm återaktiverade!", + "configStatusMutedUntil": "🔕 Tystat i {{duration}} till", + "configStatusTitle": "📊 Konfigurationsstatus", + "configStatusTelegram": "🔔 Telegram", + "configStatusTelegramLinked": "✅ Länkat sedan {{date}}", + "configStatusVehicles": "🚗 Fordon", + "configStatusNoVehicles": "Inga fordon registrerade", + "configStatusTelemetryActive": "✅ Telemetri aktiv", + "configStatusTelemetryInactive": "❌ Telemetri inaktiv", + "botUpdateV1": "🆕 SentryGuard har uppdaterats!\n\nDu kan nu hantera dina larminställningar direkt från menyn nedan.\n\n• 📊 Min status — Visa din konfiguration\n• 🔕 Tysta larm — Pausa aviseringar tillfälligt", + "offensiveBreakIn": "🚨 Inbrott", + "offensiveNoVehicles": "🚫 Inga fordon registrerade ännu. Aktivera övervakning först.", + "offensiveSelectVehicle": "🚗 Välj ett fordon:", + "offensiveChooseResponse": "🚗 {{vehicle}}\n\nVälj den offensiva responsen:", + "offensiveDisabled": "⛔ Inaktiverad", + "offensiveHonk": "📯 Tuta", + "offensiveConfirmed": "✅ {{vehicle}} respons inställd på: {{response}}", + "offensiveTest": "🧪 Test", + "offensiveTestTriggered": "Test utlöst!", + "offensiveTestDisabled": "Aktivera en offensiv respons innan du testar.", + "offensiveActivatedFor": "📯 {{vehicle}}\n\nTutan aktiverad i {{duration}}", + "offensiveDeactivatedAuto": "⏱️ {{vehicle}}\n\nTutan inaktiverades automatiskt", + "offensiveError": "❌ Fel vid uppdatering av offensiv respons", + "offensiveDisabledMsg": "📯 {{vehicle}}\n\nTutan inaktiverad", + "Intrusion alert": "Inbrottslarm", + "A break-in attempt was detected.": "Ett inbrottsförsök upptäcktes.", + "Sentry alert": "Sentry-larm", + "A Sentry event was detected.": "En Sentry-händelse upptäcktes." +} diff --git a/apps/mobile/src/core/i18n.test.ts b/apps/mobile/src/core/i18n.test.ts index 2e406789..5032b97b 100644 --- a/apps/mobile/src/core/i18n.test.ts +++ b/apps/mobile/src/core/i18n.test.ts @@ -21,11 +21,29 @@ describe('The resolveSupportedLanguage() function', () => { it('should return English for en', () => { expect(resolveSupportedLanguage('en')).toBe('en'); }); + + it('should return German for de', () => { + expect(resolveSupportedLanguage('de')).toBe('de'); + }); + + it('should return Spanish for es', () => { + expect(resolveSupportedLanguage('es')).toBe('es'); + }); + + it('should return Swedish for sv', () => { + expect(resolveSupportedLanguage('sv')).toBe('sv'); + }); + + it('should return Norwegian for Norwegian Bokmål and Nynorsk codes', () => { + expect(resolveSupportedLanguage('nb')).toBe('no'); + expect(resolveSupportedLanguage('nb-NO')).toBe('no'); + expect(resolveSupportedLanguage('nn')).toBe('no'); + }); }); describe('When the language code is not supported', () => { it('should fall back to English', () => { - expect(resolveSupportedLanguage('de')).toBe('en'); + expect(resolveSupportedLanguage('pt')).toBe('en'); }); }); @@ -49,9 +67,25 @@ describe('The resolveDeviceLanguage() function', () => { }); }); + describe('When the device locale is German', () => { + it('should return German', () => { + mockGetLocales.mockReturnValue([{ languageCode: 'de' }]); + + expect(resolveDeviceLanguage()).toBe('de'); + }); + }); + + describe('When the device locale is Norwegian Bokmål', () => { + it('should return Norwegian', () => { + mockGetLocales.mockReturnValue([{ languageCode: 'nb' }]); + + expect(resolveDeviceLanguage()).toBe('no'); + }); + }); + describe('When the device locale is unsupported', () => { it('should fall back to English', () => { - mockGetLocales.mockReturnValue([{ languageCode: 'es' }]); + mockGetLocales.mockReturnValue([{ languageCode: 'pt' }]); expect(resolveDeviceLanguage()).toBe('en'); }); diff --git a/apps/mobile/src/core/i18n.ts b/apps/mobile/src/core/i18n.ts index 8e0d062c..6acf0c39 100644 --- a/apps/mobile/src/core/i18n.ts +++ b/apps/mobile/src/core/i18n.ts @@ -2,14 +2,28 @@ import { getLocales } from 'expo-localization'; import i18n from 'i18next'; import { initReactI18next } from 'react-i18next'; +import da from '../locales/da.json'; +import de from '../locales/de.json'; import en from '../locales/en.json'; +import es from '../locales/es.json'; import fr from '../locales/fr.json'; +import it from '../locales/it.json'; +import nl from '../locales/nl.json'; +import no from '../locales/no.json'; +import sv from '../locales/sv.json'; -export const supportedLanguages = ['en', 'fr'] as const; +export const supportedLanguages = ['en', 'fr', 'de', 'nl', 'no', 'es', 'it', 'sv', 'da'] as const; export type SupportedLanguage = (typeof supportedLanguages)[number]; +const languageAliases: Record = { + nb: 'no', + nn: 'no', +}; + export function resolveSupportedLanguage(languageCode: string | null | undefined): SupportedLanguage { - return supportedLanguages.find((language) => language === languageCode) ?? 'en'; + const primaryTag = languageCode?.toLowerCase().split('-')[0] ?? ''; + const normalized = languageAliases[primaryTag] ?? primaryTag; + return supportedLanguages.find((language) => language === normalized) ?? 'en'; } export function resolveDeviceLanguage(): SupportedLanguage { @@ -25,6 +39,13 @@ void i18n.use(initReactI18next).init({ resources: { en: { translation: en }, fr: { translation: fr }, + de: { translation: de }, + nl: { translation: nl }, + no: { translation: no }, + es: { translation: es }, + it: { translation: it }, + sv: { translation: sv }, + da: { translation: da }, }, }); diff --git a/apps/mobile/src/features/user/domain/entities.ts b/apps/mobile/src/features/user/domain/entities.ts index 37f69d77..25884b6f 100644 --- a/apps/mobile/src/features/user/domain/entities.ts +++ b/apps/mobile/src/features/user/domain/entities.ts @@ -1,6 +1,13 @@ export enum UserLanguage { English = 'en', French = 'fr', + German = 'de', + Dutch = 'nl', + Norwegian = 'no', + Spanish = 'es', + Italian = 'it', + Swedish = 'sv', + Danish = 'da', } export interface UserLanguageResponse { diff --git a/apps/mobile/src/locales/da.json b/apps/mobile/src/locales/da.json new file mode 100644 index 00000000..91821b8f --- /dev/null +++ b/apps/mobile/src/locales/da.json @@ -0,0 +1,265 @@ +{ + "alerts.empty": "Ingen advarsler endnu.", + "alerts.clear": "Ryd", + "alerts.clearConfirmTitle": "Ryd alle advarsler?", + "alerts.clearConfirmMessage": "{{count}} advarsel/advarsler slettes permanent.", + "alerts.delete": "Slet", + "alerts.unread": "Ulæst advarsel", + "alerts.error": "Kan ikke indlæse advarsler.", + "alerts.event.break_in.message": "Et indbrudsforsøg blev registreret.", + "alerts.event.break_in.title": "Indbrudsadvarsel", + "alerts.event.sentry.message": "En Sentry Mode-hændelse blev registreret.", + "alerts.event.sentry.title": "Sentry-advarsel", + "alerts.filter.all": "Alle", + "alerts.filter.critical": "Kritisk", + "alerts.filter.warning": "Advarsel", + "alerts.kicker": "Advarselscenter", + "alerts.loading": "Indlæser advarsler...", + "alerts.subtitle": "Historik over sikkerhedshændelser, der er registreret af SentryGuard.", + "alerts.title": "Advarsler", + "auth.advanced.apiPlaceholder": "Brugerdefineret API-adresse", + "auth.advanced.invalid": "Ugyldig avanceret indstilling.", + "auth.advanced.label": "Avancerede indstillinger", + "auth.advanced.reset": "Standard", + "auth.advanced.resetDone": "Standardindstillinger gendannet.", + "auth.advanced.save": "Gem", + "auth.advanced.saved": "Avancerede indstillinger gemt.", + "auth.advanced.virtualKeyPlaceholder": "Brugerdefineret domæne", + "auth.error.apiUrl": "Ugyldig API-adresse. Brug en URL, der starter med http:// eller https://.", + "auth.error.login": "Kan ikke åbne Tesla-login.", + "auth.error.missingToken": "Login blev annulleret, eller svaret indeholdt ikke et token.", + "auth.error.virtualKeyUrl": "Ugyldigt domæne. Indtast et domæne som ditdomæne.com.", + "auth.login": "Tesla-login", + "auth.loginPending": "Opretter forbindelse...", + "auth.permissions.title": "Tilladelser kræves", + "auth.permissions.description": "Nogle Tesla-tilladelser mangler. Giv dem for at fuldføre login.", + "auth.permissions.fix": "Ret tilladelser", + "auth.permissions.back": "Tilbage til login", + "auth.subtitle": "Få en øjeblikkelig advarsel i samme øjeblik, der registreres mistænkelig aktivitet omkring din bil.", + "auth.title": "Overvåg din Tesla fra din telefon.", + "auth.demo.toggleLink": "Demotilstand / App Store-gennemgang", + "auth.demo.label": "Anmelder-/demo-login", + "auth.demo.emailPlaceholder": "Demo-e-mail", + "auth.demo.passwordPlaceholder": "Adgangskode", + "auth.demo.submit": "Log ind som demo", + "auth.demo.loading": "Logger ind...", + "auth.demo.error": "Ugyldige loginoplysninger, eller login mislykkedes.", + "auth.needHelp": "Brug for hjælp? Kontakt supporten", + "common.active": "Aktiv", + "common.back": "Tilbage", + "common.beta": "Beta", + "common.cancel": "Annuller", + "common.inactive": "Inaktiv", + "common.loading": "Indlæser...", + "common.notProvided": "Ikke angivet", + "common.protected": "Beskyttet", + "common.toConfigure": "Skal konfigureres", + "common.vehicleFallback": "Tesla", + "api.error.forbidden": "Adgang nægtet. Kontrollér samtykke eller betakontostatus.", + "api.error.generic": "Noget gik galt. Prøv igen om et øjeblik.", + "api.error.network": "Kan ikke oprette forbindelse. Kontrollér din forbindelse eller API-adressen.", + "api.error.notFound": "Denne handling er ikke tilgængelig lige nu.", + "api.error.sessionExpired": "Sessionen er udløbet. Log ind igen for at fortsætte.", + "api.error.unavailable": "API'et er ikke tilgængeligt for øjeblikket.", + "api.error.webCors": "Webappen kan ikke nå API'et. Kontrollér API-adressen eller CORS-konfigurationen.", + "dashboard.configure": "Skal konfigureres", + "dashboard.empty": "Intet køretøj tilgængeligt.", + "dashboard.kicker": "Sikkerhed", + "dashboard.loading": "Indlæser køretøjer...", + "dashboard.monitored": "Overvåget", + "dashboard.subtitleLoading": "Realtidsstatus forbundet til SentryGuard-API'et.", + "dashboard.subtitleReady": "{{protectedCount}}/{{total}} køretøj(er) overvåges.", + "dashboard.title": "Køretøjer", + "dashboard.details": "Se detaljer", + "dashboard.virtualKey.message": "Kom tilbage efter bekræftelse i Tesla, og opdater derefter.", + "dashboard.virtualKey.missingUrl": "URL'en til den virtuelle nøgle er ikke konfigureret for dette API.", + "dashboard.virtualKey.cardMissing": "Virtuel nøgle skal konfigureres — åbn Tesla", + "dashboard.virtualKey.open": "Åbn Tesla", + "dashboard.virtualKey.text": "Tilføj nøglen i Tesla, før du aktiverer overvågning.", + "dashboard.virtualKey.title": "Virtuel nøgle ikke parret", + "dashboard.onboardingIncomplete.title": "Konfiguration ufuldstændig", + "dashboard.onboardingIncomplete.text": "Du sprang konfigurationen over, så nogle funktioner virker muligvis ikke, før den er færdig.", + "dashboard.onboardingIncomplete.resume": "Genoptag konfiguration", + "dashboard.pushBanner.title": "Advarsler inaktive på denne enhed", + "dashboard.pushBanner.text": "Aktivér push-notifikationer for at modtage indbruds- og sikkerhedsadvarsler på denne enhed.", + "dashboard.pushBanner.enable": "Aktivér på denne enhed", + "dashboard.pushBanner.dismiss": "Luk", + "settings.account": "Konto", + "settings.beta": "Beta", + "settings.betaFooter": "Medlem af betaprogrammet", + "settings.criticalOnly": "Kun kritiske", + "settings.criticalAlerts": "Prioriterede advarsler", + "settings.criticalAlertsDescription": "Lader kritiske advarsler ringe, selv i lydløs tilstand eller Forstyr ikke, når telefonen tillader det.", + "settings.dndAccessButton": "Tillad Forstyr ikke", + "settings.dndAccessDescription": "Android blokerer lyde, mens Forstyr ikke er aktiveret. Tillad SentryGuard, så kritiske advarsler stadig kan ringe.", + "settings.dndAccessTitle": "Tillad prioriterede advarsler", + "settings.dark": "Mørk", + "settings.email": "E-mail", + "settings.error": "Kan ikke indlæse indstillinger.", + "settings.language": "Sprog", + "settings.light": "Lys", + "settings.logout": "Log ud", + "settings.name": "Navn", + "settings.notifications": "Notifikationer", + "settings.profileSubtitle": "Lokal mobilsession og SentryGuard-profil.", + "settings.push": "Push-notifikationer", + "settings.pushError": "Kan ikke aktivere push-notifikationer.", + "settings.pushNativeOnly": "Native push-notifikationer er kun tilgængelige i iOS- eller Android-appen.", + "settings.pushNoToken": "Push-notifikationer kan ikke aktiveres på denne enhed lige nu. De øvrige indstillinger blev gemt.", + "settings.pushPermissionDenied": "Push-tilladelse nægtet.", + "settings.criticalAlertsUnavailable": "Denne indstilling kræver en opdatering af SentryGuard-API'et.", + "settings.supportSection": "Support", + "settings.contactSupport": "Livechat", + "settings.contactSupportSubtitle": "Chat med vores team via Crisp", + "settings.discordCommunity": "Discord-fællesskab", + "settings.discordCommunitySubtitle": "Fællesskabshjælp, opdateringer og chat", + "settings.emailSupport": "Kontakt os pr. e-mail", + "settings.diagnosticSection": "Diagnostik", + "settings.exportLogs": "Eksportér fejlfindingslogfiler", + "settings.clearLogs": "Ryd fejlfindingslogfiler", + "settings.logsCopied": "Fejlfindingslogfiler kopieret til udklipsholderen.", + "settings.debugLogsFooter": "Tekniske logfiler hjælper med at diagnosticere problemer i appen. De indeholder ingen adgangskoder eller tokens.", + "settings.system": "Automatisk", + "settings.telegramAccount": "Konto", + "settings.telegram": "Telegram-notifikationer", + "settings.telegramSection": "Telegram", + "settings.telegramConnect": "Konfigurer Telegram", + "settings.telegramConnectSubtitle": "Modtag også dine advarsler på Telegram", + "settings.telegramLinkReturn": "Kom tilbage hertil, efter du har tilknyttet din konto i Telegram.", + "settings.theme": "Tema", + "settings.themeSubtitle": "Den mobile grænseflades udseende", + "settings.title": "Indstillinger", + "notifications.channelName": "SentryGuard-advarsler", + "notifications.criticalChannelName": "Kritiske SentryGuard-advarsler", + "tabs.alerts": "Advarsler", + "tabs.dashboard": "Oversigt", + "tabs.settings": "Indstillinger", + "vehicle.actions": "Handlinger", + "vehicle.alertSentry": "Sentry-advarsel", + "vehicle.alertIntrusion": "Indbrudsadvarsel", + "vehicle.authorizeOffensive": "Godkend køretøjskommandoer", + "vehicle.cancel": "Annuller", + "vehicle.confirmDisable": "Deaktiver Sentry-advarsel for dette køretøj?", + "vehicle.disable": "Deaktiver", + "vehicle.disableTitle": "Deaktiver advarsel", + "vehicle.kicker": "Køretøj", + "vehicle.lockedKeyDescription": "Tilføj den virtuelle nøgle i Tesla, før du aktiverer overvågning.", + "vehicle.sentrySection": "Sentry Mode", + "vehicle.intrusionSection": "Indbrud", + "vehicle.monitoring": "Overvågning", + "vehicle.offensive": "Offensivt svar", + "vehicle.offensiveDisabled": "Deaktiveret", + "vehicle.offensiveHonk": "Horn", + "vehicle.offensiveFart": "Prut", + "vehicle.offensiveDisabledDescription": "Hornet forbliver deaktiveret for indbrudsadvarsler.", + "vehicle.offensiveEnabledDescription": "Hornet udløses, når et indbrudsforsøg registreres.", + "vehicle.offensiveFartEnabledDescription": "Prut-kommandoen udløses, når et indbrudsforsøg registreres.", + "vehicle.autoSentry": "Automatisk Sentry Mode", + "vehicle.autoSentryActivate": "Aktivér automatisk Sentry Mode", + "vehicle.autoSentryDescription": "Aktiverer Sentry Mode automatisk, når et indbrudsforsøg registreres, så kameraerne kan optage.", + "vehicle.openingTesla": "Åbner Tesla...", + "vehicle.openTesla": "Åbn Tesla", + "vehicle.showVin": "Vis VIN", + "vehicle.hideVin": "Skjul VIN", + "vehicle.scopeCancelled": "Tesla-godkendelsen blev annulleret, eller token mangler.", + "vehicle.scopeDescription": "Giv SentryGuard tilladelse til at sende kommandoer til din Tesla, før du aktiverer automatisk Sentry Mode eller offensiv respons.", + "vehicle.sentryDisabledDescription": "Aktivér den dataindsamling, der kræves til Sentry-advarsler.", + "vehicle.sentryEnabledDescription": "Sentry Mode-hændelser overvåges.", + "vehicle.intrusionDisabledDescription": "Tilføj overvågning af indbrudssignaler.", + "vehicle.intrusionEnabledDescription": "Indbrudssignaler overvåges.", + "vehicle.virtualKeyMessage": "Kom tilbage efter bekræftelse i Tesla, og opdater derefter køretøjerne.", + "vehicle.actionRefused": "Handling afvist af API'et.", + "vehicle.sentryActivated": "Sentry-advarsel aktiveret.", + "vehicle.sentryActivationFailed": "Kan ikke aktivere Sentry-advarsel.", + "vehicle.reason.missingKey": "Den virtuelle nøgle er ikke føjet til køretøjet.", + "vehicle.reason.unsupportedHardware": "Hardwaren understøttes ikke til overvågning.", + "vehicle.reason.unsupportedFirmware": "Firmwaren understøttes ikke til overvågning.", + "vehicle.reason.maxConfigs": "Det maksimale antal overvågningskonfigurationer er allerede nået.", + "vehicle.reason.unknown": "Køretøjet blev sprunget over af en ukendt årsag.", + "vehicle.reason.withDetails": "Køretøj sprunget over: {{details}}", + "consentGate.kicker": "Samtykke", + "consentGate.title": "Opdaterede vilkår", + "consentGate.subtitle": "Samtykkevilkårene er ændret. Accepter den nye version for at fortsætte med at bruge SentryGuard.", + "onboarding.kicker": "Konfiguration", + "onboarding.loadingSubtitle": "Indlæser konfigurationsforløb...", + "onboarding.loadingTitle": "Konfiguration", + "onboarding.doneTitle": "Konfiguration fuldført", + "onboarding.doneSubtitle": "SentryGuard er klar til denne konto.", + "onboarding.continue": "Fortsæt", + "onboarding.consentTitle": "Samtykke", + "onboarding.consentSubtitle": "Accepter den databehandling, der kræves til SentryGuard-advarsler.", + "onboarding.accepting": "Validerer...", + "onboarding.accept": "Accepter og fortsæt", + "onboarding.consentUnavailable": "Samtykke er ikke tilgængeligt.", + "onboarding.vehiclesTitle": "Køretøjer", + "onboarding.vehiclesSubtitle": "Der er endnu ikke registreret noget Tesla-køretøj for denne konto.", + "onboarding.refresh": "Opdater", + "onboarding.vehiclesStep1": "Sørg for, at Tesla-kontoen har et køretøj.", + "onboarding.vehiclesStep2": "Sørg for, at Tesla-tilladelserne er accepteret.", + "onboarding.vehiclesStep3": "Opdater dette trin efter et par sekunder.", + "onboarding.virtualKeyTitle": "Virtuel nøgle", + "onboarding.virtualKeySubtitle": "Tilføj den virtuelle nøgle i Tesla-appen.", + "onboarding.virtualKeyAdded": "Jeg har tilføjet nøglen", + "onboarding.virtualKeyStep1": "Åbn Tesla fra denne knap.", + "onboarding.virtualKeyStep2": "Godkend anmodningen om virtuel nøgle.", + "onboarding.virtualKeyStep3": "Vend tilbage til SentryGuard.", + "onboarding.virtualKeyStep4": "Kontrollér, at nøglen er parret.", + "onboarding.sentrySubtitle": "Aktivér hovedovervågningen på mindst ét køretøj.", + "onboarding.activating": "Aktiverer...", + "onboarding.activateVehicle": "Aktivér {{vehicle}}", + "onboarding.breakInTitle": "Indbrudsregistrering", + "onboarding.breakInSubtitle": "Få eventuelt en advarsel ved indbrudsforsøg.", + "onboarding.breakInActivate": "Aktivér indbrudsregistrering", + "onboarding.offensiveTitle": "Offensivt svar", + "onboarding.offensiveSubtitle": "Vælg, hvordan dit køretøj reagerer, når et indbrudsforsøg registreres.", + "onboarding.readyTitle": "Alt er klar", + "onboarding.readySubtitle": "Konfigurationsforløbet er fuldført.", + "onboarding.finalizing": "Fuldfører...", + "onboarding.finish": "Afslut", + "onboarding.skip": "Spring over for nu", + "onboarding.skipSetup": "Spring konfigurationen over for nu", + "onboarding.resumeTitle": "Afslut konfigurationen", + "onboarding.vehicleEnabled": "{{vehicle}}: aktiveret", + "onboarding.vehicleDisabled": "{{vehicle}}: inaktiv", + "onboarding.vehicleKeyMissing": "{{vehicle}}: virtuel nøgle påkrævet", + "onboarding.virtualKeyMissingUrl": "URL'en til den virtuelle nøgle er ikke konfigureret for dette API.", + "onboarding.virtualKeyReturn": "Kom tilbage efter bekræftelse i Tesla, og kontrollér derefter nøglen.", + "settings.legalSection": "Juridisk", + "settings.privacyPolicy": "Privatlivspolitik", + "settings.terms": "Servicevilkår", + "settings.deleteAccount": "Slet min konto", + "settings.deleteAccountTitle": "Slet konto", + "settings.deleteAccountConfirm": "Dette sletter din konto og alle tilknyttede data permanent. Denne handling kan ikke fortrydes.", + "settings.deleteAccountCta": "Slet", + "settings.deleteAccountCountdown": "Slet ({{seconds}}s)", + "settings.deleteAccountCooldownHint": "Sletteknappen låses op efter et par sekunder, så du har tid til at læse denne advarsel.", + "common.or": "eller", + "telegram.title": "Telegram-konfiguration", + "telegram.linked": "Forbundet", + "telegram.notLinked": "Afventer", + "telegram.connected": "Din Telegram-konto er forbundet. Du modtager dine advarsler her.", + "telegram.disconnected": "Tilknyt din Telegram-konto for at modtage køretøjsadvarsler.", + "telegram.generateLink": "Generer Telegram-link", + "telegram.generating": "Genererer...", + "telegram.waiting": "Venter på, at du klikker på linket og starter botten...", + "telegram.linkExpires": "Dette link udløber om {{minutes}} minutter", + "telegram.openBot": "Åbn Telegram", + "telegram.success": "Din Telegram-konto er tilknyttet!", + "telegram.linkedOn": "Tilknyttet den", + "telegram.sendTest": "Send test", + "telegram.sendingTest": "Sender...", + "telegram.unlink": "Fjern tilknytning af konto", + "telegram.unlinking": "Fjerner tilknytning...", + "telegram.copy": "Kopier link", + "telegram.unlinkConfirm": "Er du sikker på, at du vil fjerne tilknytningen til din Telegram-konto?", + "telegram.testSent": "Testbesked sendt! Tjek dit Telegram.", + "onboarding.notificationsTitle": "Alarmer og notifikationer", + "onboarding.notificationsSubtitle": "Aktivér push-notifikationer for at modtage alarmer i realtid på denne telefon. Du kan også konfigurere Telegram senere i indstillingerne.", + "onboarding.notificationsTelegram": "Telegram", + "onboarding.notificationsPush": "Push-notifikationer", + "onboarding.notificationsPushDescription": "Gør det muligt at modtage øjeblikkelige alarmer på denne telefon ved mistænkelig aktivitet eller indbrudsforsøg.", + "onboarding.notificationsConfigured": "Notifikationskonfiguration bekræftet!", + "onboarding.notificationsNotConfigured": "Du skal aktivere push-notifikationer for at fortsætte.", + "onboarding.notificationsActivatePush": "Aktivér", + "onboarding.notificationsPushActive": "Push-notifikationer aktiveret på denne enhed" +} diff --git a/apps/mobile/src/locales/de.json b/apps/mobile/src/locales/de.json new file mode 100644 index 00000000..e262cdc8 --- /dev/null +++ b/apps/mobile/src/locales/de.json @@ -0,0 +1,265 @@ +{ + "alerts.empty": "Noch keine Benachrichtigungen.", + "alerts.clear": "Löschen", + "alerts.clearConfirmTitle": "Alle Benachrichtigungen löschen?", + "alerts.clearConfirmMessage": "{{count}} Benachrichtigung(en) werden dauerhaft gelöscht.", + "alerts.delete": "Löschen", + "alerts.unread": "Ungelesene Benachrichtigung", + "alerts.error": "Benachrichtigungen konnten nicht geladen werden.", + "alerts.event.break_in.message": "Ein Einbruchsversuch wurde erkannt.", + "alerts.event.break_in.title": "Einbruchsalarm", + "alerts.event.sentry.message": "Ein Sentry Mode-Ereignis wurde erkannt.", + "alerts.event.sentry.title": "Sentry-Alarm", + "alerts.filter.all": "Alle", + "alerts.filter.critical": "Kritisch", + "alerts.filter.warning": "Warnung", + "alerts.kicker": "Benachrichtigungszentrale", + "alerts.loading": "Benachrichtigungen werden geladen...", + "alerts.subtitle": "Verlauf der von SentryGuard erkannten Sicherheitsereignisse.", + "alerts.title": "Benachrichtigungen", + "auth.advanced.apiPlaceholder": "Benutzerdefinierte API-Adresse", + "auth.advanced.invalid": "Ungültige erweiterte Einstellung.", + "auth.advanced.label": "Erweiterte Einstellungen", + "auth.advanced.reset": "Standard", + "auth.advanced.resetDone": "Standardeinstellungen wiederhergestellt.", + "auth.advanced.save": "Speichern", + "auth.advanced.saved": "Erweiterte Einstellungen gespeichert.", + "auth.advanced.virtualKeyPlaceholder": "Benutzerdefinierte Domain", + "auth.error.apiUrl": "Ungültige API-Adresse. Verwende eine URL, die mit http:// oder https:// beginnt.", + "auth.error.login": "Tesla-Anmeldung konnte nicht geöffnet werden.", + "auth.error.missingToken": "Anmeldung wurde abgebrochen oder der Callback enthielt kein Token.", + "auth.error.virtualKeyUrl": "Ungültige Domain. Gib eine Domain wie deinedomain.com ein.", + "auth.login": "Tesla-Anmeldung", + "auth.loginPending": "Verbindung wird hergestellt...", + "auth.permissions.title": "Berechtigungen erforderlich", + "auth.permissions.description": "Einige Tesla-Berechtigungen fehlen. Erteile sie, um die Anmeldung abzuschließen.", + "auth.permissions.fix": "Berechtigungen korrigieren", + "auth.permissions.back": "Zurück zur Anmeldung", + "auth.subtitle": "Erhalte sofort eine Benachrichtigung, sobald verdächtige Aktivität rund um dein Auto erkannt wird.", + "auth.title": "Überwache deinen Tesla per Smartphone.", + "auth.demo.toggleLink": "Demo-Modus / App Store-Prüfung", + "auth.demo.label": "Prüfer-/Demo-Anmeldung", + "auth.demo.emailPlaceholder": "Demo-E-Mail", + "auth.demo.passwordPlaceholder": "Passwort", + "auth.demo.submit": "Als Demo anmelden", + "auth.demo.loading": "Anmeldung läuft...", + "auth.demo.error": "Ungültige Anmeldedaten oder Anmeldung fehlgeschlagen.", + "auth.needHelp": "Hilfe benötigt? Kontaktieren Sie den Support", + "common.active": "Aktiv", + "common.back": "Zurück", + "common.beta": "Beta", + "common.cancel": "Abbrechen", + "common.inactive": "Inaktiv", + "common.loading": "Wird geladen...", + "common.notProvided": "Nicht angegeben", + "common.protected": "Geschützt", + "common.toConfigure": "Einzurichten", + "common.vehicleFallback": "Tesla", + "api.error.forbidden": "Zugriff verweigert. Prüfe die Einwilligung oder den Beta-Kontostatus.", + "api.error.generic": "Etwas ist schiefgelaufen. Versuche es gleich noch einmal.", + "api.error.network": "Verbindung nicht möglich. Prüfe deine Verbindung oder die API-Adresse.", + "api.error.notFound": "Diese Aktion ist derzeit nicht verfügbar.", + "api.error.sessionExpired": "Sitzung abgelaufen. Melde dich erneut an, um fortzufahren.", + "api.error.unavailable": "API ist derzeit nicht verfügbar.", + "api.error.webCors": "Die Web-App kann die API nicht erreichen. Prüfe die API-Adresse oder die CORS-Konfiguration.", + "dashboard.configure": "Einzurichten", + "dashboard.empty": "Kein Fahrzeug verfügbar.", + "dashboard.kicker": "Sicherheit", + "dashboard.loading": "Fahrzeuge werden geladen...", + "dashboard.monitored": "Überwacht", + "dashboard.subtitleLoading": "Live-Status verbunden mit der SentryGuard-API.", + "dashboard.subtitleReady": "{{protectedCount}}/{{total}} Fahrzeug(e) überwacht.", + "dashboard.title": "Fahrzeuge", + "dashboard.details": "Details anzeigen", + "dashboard.virtualKey.message": "Komm nach der Bestätigung in Tesla zurück und aktualisiere dann.", + "dashboard.virtualKey.missingUrl": "Die URL des virtuellen Schlüssels ist für diese API nicht konfiguriert.", + "dashboard.virtualKey.cardMissing": "Virtueller Schlüssel einzurichten — Tesla öffnen", + "dashboard.virtualKey.open": "Tesla öffnen", + "dashboard.virtualKey.text": "Füge den Schlüssel in Tesla hinzu, bevor du die Überwachung aktivierst.", + "dashboard.virtualKey.title": "Virtueller Schlüssel nicht gekoppelt", + "dashboard.onboardingIncomplete.title": "Einrichtung unvollständig", + "dashboard.onboardingIncomplete.text": "Du hast die Einrichtung übersprungen, daher funktionieren manche Funktionen möglicherweise erst, wenn sie abgeschlossen ist.", + "dashboard.onboardingIncomplete.resume": "Einrichtung fortsetzen", + "dashboard.pushBanner.title": "Benachrichtigungen auf diesem Gerät inaktiv", + "dashboard.pushBanner.text": "Aktiviere Push-Benachrichtigungen, um Einbruchs- und Sicherheitswarnungen auf diesem Gerät zu erhalten.", + "dashboard.pushBanner.enable": "Auf diesem Gerät aktivieren", + "dashboard.pushBanner.dismiss": "Ausblenden", + "settings.account": "Konto", + "settings.beta": "Beta", + "settings.betaFooter": "Mitglied des Beta-Programms", + "settings.criticalOnly": "Nur kritische", + "settings.criticalAlerts": "Prioritäts-Benachrichtigungen", + "settings.criticalAlertsDescription": "Lässt kritische Benachrichtigungen auch im Lautlos- oder Nicht-stören-Modus klingeln, sofern das Telefon es zulässt.", + "settings.dndAccessButton": "Nicht stören zulassen", + "settings.dndAccessDescription": "Android blockiert Töne, während Nicht stören aktiviert ist. Erlaube SentryGuard, damit kritische Benachrichtigungen trotzdem klingeln können.", + "settings.dndAccessTitle": "Prioritäts-Benachrichtigungen zulassen", + "settings.dark": "Dunkel", + "settings.email": "E-Mail", + "settings.error": "Einstellungen konnten nicht geladen werden.", + "settings.language": "Sprache", + "settings.light": "Hell", + "settings.logout": "Abmelden", + "settings.name": "Name", + "settings.notifications": "Benachrichtigungen", + "settings.profileSubtitle": "Lokale mobile Sitzung und SentryGuard-Profil.", + "settings.push": "Push-Benachrichtigungen", + "settings.pushError": "Push-Benachrichtigungen konnten nicht aktiviert werden.", + "settings.pushNativeOnly": "Native Push-Benachrichtigungen sind nur in der iOS- oder Android-App verfügbar.", + "settings.pushNoToken": "Push-Benachrichtigungen können auf diesem Gerät derzeit nicht aktiviert werden. Die anderen Einstellungen wurden gespeichert.", + "settings.pushPermissionDenied": "Push-Berechtigung verweigert.", + "settings.criticalAlertsUnavailable": "Diese Option erfordert ein Update der SentryGuard-API.", + "settings.supportSection": "Support", + "settings.contactSupport": "Live-Chat", + "settings.contactSupportSubtitle": "Chatten Sie mit unserem Team über Crisp", + "settings.discordCommunity": "Discord-Community", + "settings.discordCommunitySubtitle": "Community-Hilfe, Neuigkeiten und Chat", + "settings.emailSupport": "Kontaktieren Sie uns per E-Mail", + "settings.diagnosticSection": "Diagnose", + "settings.exportLogs": "Debug-Logs exportieren", + "settings.clearLogs": "Debug-Logs löschen", + "settings.logsCopied": "Debug-Logs in die Zwischenablage kopiert.", + "settings.debugLogsFooter": "Technische Logs helfen dabei, Probleme mit der App zu diagnostizieren. Sie enthalten keine Passwörter oder Tokens.", + "settings.system": "Automatisch", + "settings.telegramAccount": "Konto", + "settings.telegram": "Telegram-Benachrichtigungen", + "settings.telegramSection": "Telegram", + "settings.telegramConnect": "Telegram einrichten", + "settings.telegramConnectSubtitle": "Erhalte deine Benachrichtigungen auch auf Telegram", + "settings.telegramLinkReturn": "Komm hierher zurück, nachdem du dein Konto in Telegram verknüpft hast.", + "settings.theme": "Design", + "settings.themeSubtitle": "Darstellung der mobilen Oberfläche", + "settings.title": "Einstellungen", + "notifications.channelName": "SentryGuard-Benachrichtigungen", + "notifications.criticalChannelName": "Kritische SentryGuard-Benachrichtigungen", + "tabs.alerts": "Benachrichtigungen", + "tabs.dashboard": "Dashboard", + "tabs.settings": "Einstellungen", + "vehicle.actions": "Aktionen", + "vehicle.alertSentry": "Sentry-Alarm", + "vehicle.alertIntrusion": "Einbruchsalarm", + "vehicle.authorizeOffensive": "Fahrzeugbefehle autorisieren", + "vehicle.cancel": "Abbrechen", + "vehicle.confirmDisable": "Sentry-Alarm für dieses Fahrzeug deaktivieren?", + "vehicle.disable": "Deaktivieren", + "vehicle.disableTitle": "Alarm deaktivieren", + "vehicle.kicker": "Fahrzeug", + "vehicle.lockedKeyDescription": "Füge den virtuellen Schlüssel in Tesla hinzu, bevor du die Überwachung aktivierst.", + "vehicle.sentrySection": "Sentry Mode", + "vehicle.intrusionSection": "Einbruch", + "vehicle.monitoring": "Überwachung", + "vehicle.offensive": "Offensive Reaktion", + "vehicle.offensiveDisabled": "Deaktiviert", + "vehicle.offensiveHonk": "Hupe", + "vehicle.offensiveFart": "Furz", + "vehicle.offensiveDisabledDescription": "Die Hupe bleibt bei Einbruchsalarmen deaktiviert.", + "vehicle.offensiveEnabledDescription": "Die Hupe wird ausgelöst, wenn ein Einbruchsversuch erkannt wird.", + "vehicle.offensiveFartEnabledDescription": "Der Furz-Befehl wird ausgelöst, wenn ein Einbruchsversuch erkannt wird.", + "vehicle.autoSentry": "Automatischer Sentry Mode", + "vehicle.autoSentryActivate": "Automatischen Sentry Mode aktivieren", + "vehicle.autoSentryDescription": "Schaltet den Sentry Mode automatisch ein, wenn ein Einbruchsversuch erkannt wird, damit die Kameras aufzeichnen.", + "vehicle.openingTesla": "Tesla wird geöffnet...", + "vehicle.openTesla": "Tesla öffnen", + "vehicle.showVin": "VIN anzeigen", + "vehicle.hideVin": "VIN ausblenden", + "vehicle.scopeCancelled": "Tesla-Autorisierung wurde abgebrochen oder das Token fehlt.", + "vehicle.scopeDescription": "Autorisiere SentryGuard, Befehle an deinen Tesla zu senden, bevor du den automatischen Sentry Mode oder die offensive Reaktion aktivierst.", + "vehicle.sentryDisabledDescription": "Aktiviere die für Sentry-Alarme erforderliche Datenerfassung.", + "vehicle.sentryEnabledDescription": "Sentry Mode-Ereignisse werden überwacht.", + "vehicle.intrusionDisabledDescription": "Füge die Überwachung von Einbruchssignalen hinzu.", + "vehicle.intrusionEnabledDescription": "Einbruchssignale werden überwacht.", + "vehicle.virtualKeyMessage": "Komm nach der Bestätigung in Tesla zurück und aktualisiere dann die Fahrzeuge.", + "vehicle.actionRefused": "Aktion von der API abgelehnt.", + "vehicle.sentryActivated": "Sentry-Alarm aktiviert.", + "vehicle.sentryActivationFailed": "Sentry-Alarm konnte nicht aktiviert werden.", + "vehicle.reason.missingKey": "Der virtuelle Schlüssel wurde dem Fahrzeug nicht hinzugefügt.", + "vehicle.reason.unsupportedHardware": "Hardware wird für die Überwachung nicht unterstützt.", + "vehicle.reason.unsupportedFirmware": "Firmware wird für die Überwachung nicht unterstützt.", + "vehicle.reason.maxConfigs": "Maximale Anzahl an Überwachungskonfigurationen bereits erreicht.", + "vehicle.reason.unknown": "Fahrzeug aus unbekanntem Grund übersprungen.", + "vehicle.reason.withDetails": "Fahrzeug übersprungen: {{details}}", + "consentGate.kicker": "Einwilligung", + "consentGate.title": "Aktualisierte Bedingungen", + "consentGate.subtitle": "Die Einwilligungsbedingungen haben sich geändert. Akzeptiere die neue Version, um SentryGuard weiterhin zu nutzen.", + "onboarding.kicker": "Einrichtung", + "onboarding.loadingSubtitle": "Einrichtungsablauf wird geladen...", + "onboarding.loadingTitle": "Einrichtung", + "onboarding.doneTitle": "Einrichtung abgeschlossen", + "onboarding.doneSubtitle": "SentryGuard ist für dieses Konto bereit.", + "onboarding.continue": "Weiter", + "onboarding.consentTitle": "Einwilligung", + "onboarding.consentSubtitle": "Akzeptiere die für SentryGuard-Benachrichtigungen erforderliche Datenverarbeitung.", + "onboarding.accepting": "Wird überprüft...", + "onboarding.accept": "Akzeptieren und fortfahren", + "onboarding.consentUnavailable": "Einwilligung nicht verfügbar.", + "onboarding.vehiclesTitle": "Fahrzeuge", + "onboarding.vehiclesSubtitle": "Für dieses Konto wurde noch kein Tesla-Fahrzeug erkannt.", + "onboarding.refresh": "Aktualisieren", + "onboarding.vehiclesStep1": "Stelle sicher, dass das Tesla-Konto ein Fahrzeug besitzt.", + "onboarding.vehiclesStep2": "Stelle sicher, dass die Tesla-Berechtigungen akzeptiert wurden.", + "onboarding.vehiclesStep3": "Aktualisiere diesen Schritt nach einigen Sekunden.", + "onboarding.virtualKeyTitle": "Virtueller Schlüssel", + "onboarding.virtualKeySubtitle": "Füge den virtuellen Schlüssel in der Tesla-App hinzu.", + "onboarding.virtualKeyAdded": "Ich habe den Schlüssel hinzugefügt", + "onboarding.virtualKeyStep1": "Öffne Tesla über diese Schaltfläche.", + "onboarding.virtualKeyStep2": "Bestätige die Anfrage für den virtuellen Schlüssel.", + "onboarding.virtualKeyStep3": "Kehre zu SentryGuard zurück.", + "onboarding.virtualKeyStep4": "Überprüfe, ob der Schlüssel gekoppelt ist.", + "onboarding.sentrySubtitle": "Aktiviere die Hauptüberwachung für mindestens ein Fahrzeug.", + "onboarding.activating": "Wird aktiviert...", + "onboarding.activateVehicle": "{{vehicle}} aktivieren", + "onboarding.breakInTitle": "Einbruchserkennung", + "onboarding.breakInSubtitle": "Lass dich optional bei Einbruchsversuchen benachrichtigen.", + "onboarding.breakInActivate": "Einbruchserkennung aktivieren", + "onboarding.offensiveTitle": "Offensive Reaktion", + "onboarding.offensiveSubtitle": "Wähle, wie dein Fahrzeug reagiert, wenn ein Einbruchsversuch erkannt wird.", + "onboarding.readyTitle": "Alles ist bereit", + "onboarding.readySubtitle": "Der Einrichtungsablauf ist abgeschlossen.", + "onboarding.finalizing": "Wird abgeschlossen...", + "onboarding.finish": "Fertigstellen", + "onboarding.skip": "Vorerst überspringen", + "onboarding.skipSetup": "Einrichtung vorerst überspringen", + "onboarding.resumeTitle": "Einrichtung abschließen", + "onboarding.vehicleEnabled": "{{vehicle}}: aktiviert", + "onboarding.vehicleDisabled": "{{vehicle}}: inaktiv", + "onboarding.vehicleKeyMissing": "{{vehicle}}: virtueller Schlüssel erforderlich", + "onboarding.virtualKeyMissingUrl": "Die URL des virtuellen Schlüssels ist für diese API nicht konfiguriert.", + "onboarding.virtualKeyReturn": "Komm nach der Bestätigung in Tesla zurück und überprüfe dann den Schlüssel.", + "settings.legalSection": "Rechtliches", + "settings.privacyPolicy": "Datenschutzerklärung", + "settings.terms": "Nutzungsbedingungen", + "settings.deleteAccount": "Mein Konto löschen", + "settings.deleteAccountTitle": "Konto löschen", + "settings.deleteAccountConfirm": "Dadurch werden dein Konto und alle zugehörigen Daten dauerhaft gelöscht. Diese Aktion kann nicht rückgängig gemacht werden.", + "settings.deleteAccountCta": "Löschen", + "settings.deleteAccountCountdown": "Löschen ({{seconds}}s)", + "settings.deleteAccountCooldownHint": "Die Löschen-Schaltfläche wird nach einigen Sekunden freigegeben, damit du Zeit hast, diese Warnung zu lesen.", + "common.or": "oder", + "telegram.title": "Telegram-Konfiguration", + "telegram.linked": "Verbunden", + "telegram.notLinked": "Ausstehend", + "telegram.connected": "Dein Telegram-Konto ist verbunden. Du erhältst deine Benachrichtigungen hier.", + "telegram.disconnected": "Verknüpfe dein Telegram-Konto, um Fahrzeugbenachrichtigungen zu erhalten.", + "telegram.generateLink": "Telegram-Link generieren", + "telegram.generating": "Wird generiert...", + "telegram.waiting": "Warte darauf, dass du den Link anklickst und den Bot startest...", + "telegram.linkExpires": "Dieser Link läuft in {{minutes}} Minuten ab", + "telegram.openBot": "Telegram öffnen", + "telegram.success": "Dein Telegram-Konto wurde erfolgreich verknüpft!", + "telegram.linkedOn": "Verknüpft am", + "telegram.sendTest": "Test senden", + "telegram.sendingTest": "Wird gesendet...", + "telegram.unlink": "Konto trennen", + "telegram.unlinking": "Wird getrennt...", + "telegram.copy": "Link kopieren", + "telegram.unlinkConfirm": "Möchtest du dein Telegram-Konto wirklich trennen?", + "telegram.testSent": "Testnachricht gesendet! Sieh in Telegram nach.", + "onboarding.notificationsTitle": "Alarme & Benachrichtigungen", + "onboarding.notificationsSubtitle": "Aktiviere Push-Benachrichtigungen, um Alarme in Echtzeit auf diesem Telefon zu erhalten. Telegram kannst du später in den Einstellungen konfigurieren.", + "onboarding.notificationsTelegram": "Telegram", + "onboarding.notificationsPush": "Push-Benachrichtigungen", + "onboarding.notificationsPushDescription": "Ermöglicht es dir, bei verdächtigen Aktivitäten oder Einbruchsversuchen sofortige Alarme auf diesem Telefon zu erhalten.", + "onboarding.notificationsConfigured": "Benachrichtigungskonfiguration überprüft!", + "onboarding.notificationsNotConfigured": "Du musst Push-Benachrichtigungen aktivieren, um fortzufahren.", + "onboarding.notificationsActivatePush": "Aktivieren", + "onboarding.notificationsPushActive": "Push-Benachrichtigungen auf diesem Gerät aktiviert" +} diff --git a/apps/mobile/src/locales/es.json b/apps/mobile/src/locales/es.json new file mode 100644 index 00000000..2b3385b6 --- /dev/null +++ b/apps/mobile/src/locales/es.json @@ -0,0 +1,265 @@ +{ + "alerts.empty": "Aún no hay alertas.", + "alerts.clear": "Borrar", + "alerts.clearConfirmTitle": "¿Borrar todas las alertas?", + "alerts.clearConfirmMessage": "Se eliminarán permanentemente {{count}} alerta(s).", + "alerts.delete": "Eliminar", + "alerts.unread": "Alerta sin leer", + "alerts.error": "No se pueden cargar las alertas.", + "alerts.event.break_in.message": "Se detectó un intento de intrusión.", + "alerts.event.break_in.title": "Alerta de intrusión", + "alerts.event.sentry.message": "Se detectó un evento de Sentry Mode.", + "alerts.event.sentry.title": "Alerta de Sentry", + "alerts.filter.all": "Todas", + "alerts.filter.critical": "Crítica", + "alerts.filter.warning": "Advertencia", + "alerts.kicker": "Centro de alertas", + "alerts.loading": "Cargando alertas...", + "alerts.subtitle": "Historial de eventos de seguridad detectados por SentryGuard.", + "alerts.title": "Alertas", + "auth.advanced.apiPlaceholder": "Dirección de API personalizada", + "auth.advanced.invalid": "Ajuste avanzado no válido.", + "auth.advanced.label": "Ajustes avanzados", + "auth.advanced.reset": "Predeterminado", + "auth.advanced.resetDone": "Ajustes predeterminados restaurados.", + "auth.advanced.save": "Guardar", + "auth.advanced.saved": "Ajustes avanzados guardados.", + "auth.advanced.virtualKeyPlaceholder": "Dominio personalizado", + "auth.error.apiUrl": "Dirección de API no válida. Usa una URL que empiece por http:// o https://.", + "auth.error.login": "No se puede abrir el inicio de sesión de Tesla.", + "auth.error.missingToken": "El inicio de sesión se canceló o la respuesta no incluyó un token.", + "auth.error.virtualKeyUrl": "Dominio no válido. Introduce un dominio como tudominio.com.", + "auth.login": "Iniciar sesión en Tesla", + "auth.loginPending": "Conectando...", + "auth.permissions.title": "Permisos necesarios", + "auth.permissions.description": "Faltan algunos permisos de Tesla. Concédelos para completar el inicio de sesión.", + "auth.permissions.fix": "Corregir permisos", + "auth.permissions.back": "Volver al inicio de sesión", + "auth.subtitle": "Recibe una alerta instantánea en cuanto se detecte actividad sospechosa alrededor de tu coche.", + "auth.title": "Vigila tu Tesla desde el móvil.", + "auth.demo.toggleLink": "Modo demo / Revisión de App Store", + "auth.demo.label": "Inicio de sesión de revisor/demo", + "auth.demo.emailPlaceholder": "Correo de demostración", + "auth.demo.passwordPlaceholder": "Contraseña", + "auth.demo.submit": "Iniciar sesión como demo", + "auth.demo.loading": "Iniciando sesión...", + "auth.demo.error": "Credenciales no válidas o error al iniciar sesión.", + "auth.needHelp": "¿Necesita ayuda? Contacte con soporte", + "common.active": "Activo", + "common.back": "Atrás", + "common.beta": "Beta", + "common.cancel": "Cancelar", + "common.inactive": "Inactivo", + "common.loading": "Cargando...", + "common.notProvided": "No indicado", + "common.protected": "Protegido", + "common.toConfigure": "Por configurar", + "common.vehicleFallback": "Tesla", + "api.error.forbidden": "Acceso denegado. Comprueba el consentimiento o el estado de la cuenta beta.", + "api.error.generic": "Algo salió mal. Vuelve a intentarlo en un momento.", + "api.error.network": "No se puede conectar. Comprueba tu conexión o la dirección de la API.", + "api.error.notFound": "Esta acción no está disponible en este momento.", + "api.error.sessionExpired": "La sesión ha caducado. Inicia sesión de nuevo para continuar.", + "api.error.unavailable": "La API no está disponible por ahora.", + "api.error.webCors": "La aplicación web no puede acceder a la API. Comprueba la dirección de la API o la configuración de CORS.", + "dashboard.configure": "Por configurar", + "dashboard.empty": "No hay ningún vehículo disponible.", + "dashboard.kicker": "Seguridad", + "dashboard.loading": "Cargando vehículos...", + "dashboard.monitored": "Supervisados", + "dashboard.subtitleLoading": "Estado en tiempo real conectado a la API de SentryGuard.", + "dashboard.subtitleReady": "{{protectedCount}}/{{total}} vehículo(s) supervisado(s).", + "dashboard.title": "Vehículos", + "dashboard.details": "Ver detalles", + "dashboard.virtualKey.message": "Vuelve después de confirmar en Tesla y, a continuación, actualiza.", + "dashboard.virtualKey.missingUrl": "La URL de la llave virtual no está configurada para esta API.", + "dashboard.virtualKey.cardMissing": "Llave virtual por configurar — abre Tesla", + "dashboard.virtualKey.open": "Abrir Tesla", + "dashboard.virtualKey.text": "Añade la llave virtual en Tesla antes de activar la supervisión.", + "dashboard.virtualKey.title": "Llave virtual no vinculada", + "dashboard.onboardingIncomplete.title": "Configuración incompleta", + "dashboard.onboardingIncomplete.text": "Has omitido la configuración, por lo que algunas funciones podrían no funcionar hasta que la termines.", + "dashboard.onboardingIncomplete.resume": "Reanudar configuración", + "dashboard.pushBanner.title": "Alertas inactivas en este dispositivo", + "dashboard.pushBanner.text": "Activa las notificaciones push para recibir alertas de intrusión y seguridad en este dispositivo.", + "dashboard.pushBanner.enable": "Activar en este dispositivo", + "dashboard.pushBanner.dismiss": "Descartar", + "settings.account": "Cuenta", + "settings.beta": "Beta", + "settings.betaFooter": "Miembro del programa beta", + "settings.criticalOnly": "Solo críticas", + "settings.criticalAlerts": "Alertas prioritarias", + "settings.criticalAlertsDescription": "Permite que las alertas críticas suenen incluso en modo silencio o No molestar, cuando el teléfono lo permita.", + "settings.dndAccessButton": "Permitir No molestar", + "settings.dndAccessDescription": "Android bloquea los sonidos mientras No molestar está activado. Permite SentryGuard para que las alertas críticas puedan sonar igualmente.", + "settings.dndAccessTitle": "Permitir alertas prioritarias", + "settings.dark": "Oscuro", + "settings.email": "Correo electrónico", + "settings.error": "No se pueden cargar los ajustes.", + "settings.language": "Idioma", + "settings.light": "Claro", + "settings.logout": "Cerrar sesión", + "settings.name": "Nombre", + "settings.notifications": "Notificaciones", + "settings.profileSubtitle": "Sesión móvil local y perfil de SentryGuard.", + "settings.push": "Notificaciones push", + "settings.pushError": "No se pueden activar las notificaciones push.", + "settings.pushNativeOnly": "Las notificaciones push nativas solo están disponibles en la app de iOS o Android.", + "settings.pushNoToken": "Las notificaciones push no se pueden activar en este dispositivo en este momento. Los demás ajustes se han guardado.", + "settings.pushPermissionDenied": "Permiso de push denegado.", + "settings.criticalAlertsUnavailable": "Esta opción requiere una actualización de la API de SentryGuard.", + "settings.supportSection": "Soporte", + "settings.contactSupport": "Chat en directo", + "settings.contactSupportSubtitle": "Chatee con nuestro equipo a través de Crisp", + "settings.discordCommunity": "Comunidad de Discord", + "settings.discordCommunitySubtitle": "Ayuda de la comunidad, novedades y chat", + "settings.emailSupport": "Contáctenos por correo electrónico", + "settings.diagnosticSection": "Diagnóstico", + "settings.exportLogs": "Exportar registros de depuración", + "settings.clearLogs": "Borrar registros de depuración", + "settings.logsCopied": "Registros de depuración copiados al portapapeles.", + "settings.debugLogsFooter": "Los registros técnicos ayudan a diagnosticar problemas de la app. No contienen contraseñas ni tokens.", + "settings.system": "Automático", + "settings.telegramAccount": "Cuenta", + "settings.telegram": "Notificaciones de Telegram", + "settings.telegramSection": "Telegram", + "settings.telegramConnect": "Configurar Telegram", + "settings.telegramConnectSubtitle": "Recibe también tus alertas en Telegram", + "settings.telegramLinkReturn": "Vuelve aquí después de vincular tu cuenta en Telegram.", + "settings.theme": "Tema", + "settings.themeSubtitle": "Apariencia de la interfaz móvil", + "settings.title": "Ajustes", + "notifications.channelName": "Alertas de SentryGuard", + "notifications.criticalChannelName": "Alertas críticas de SentryGuard", + "tabs.alerts": "Alertas", + "tabs.dashboard": "Panel", + "tabs.settings": "Ajustes", + "vehicle.actions": "Acciones", + "vehicle.alertSentry": "Alerta de Sentry", + "vehicle.alertIntrusion": "Alerta de intrusión", + "vehicle.authorizeOffensive": "Autorizar comandos del vehículo", + "vehicle.cancel": "Cancelar", + "vehicle.confirmDisable": "¿Desactivar la alerta de Sentry para este vehículo?", + "vehicle.disable": "Desactivar", + "vehicle.disableTitle": "Desactivar alerta", + "vehicle.kicker": "Vehículo", + "vehicle.lockedKeyDescription": "Añade la llave virtual en Tesla antes de activar la supervisión.", + "vehicle.sentrySection": "Sentry Mode", + "vehicle.intrusionSection": "Intrusión", + "vehicle.monitoring": "Supervisión", + "vehicle.offensive": "Respuesta ofensiva", + "vehicle.offensiveDisabled": "Desactivada", + "vehicle.offensiveHonk": "Claxon", + "vehicle.offensiveFart": "Pedo", + "vehicle.offensiveDisabledDescription": "El claxon permanece desactivado para las alertas de intrusión.", + "vehicle.offensiveEnabledDescription": "El claxon se activa cuando se detecta un intento de intrusión.", + "vehicle.offensiveFartEnabledDescription": "El comando de pedo se activa cuando se detecta un intento de intrusión.", + "vehicle.autoSentry": "Sentry Mode automático", + "vehicle.autoSentryActivate": "Activar el Sentry Mode automático", + "vehicle.autoSentryDescription": "Activa el Sentry Mode automáticamente cuando se detecta un intento de intrusión para que las cámaras graben.", + "vehicle.openingTesla": "Abriendo Tesla...", + "vehicle.openTesla": "Abrir Tesla", + "vehicle.showVin": "Mostrar VIN", + "vehicle.hideVin": "Ocultar VIN", + "vehicle.scopeCancelled": "La autorización de Tesla se canceló o falta el token.", + "vehicle.scopeDescription": "Autoriza a SentryGuard a enviar comandos a tu Tesla antes de activar el Sentry Mode automático o la respuesta ofensiva.", + "vehicle.sentryDisabledDescription": "Activa la recopilación de datos necesaria para las alertas de Sentry.", + "vehicle.sentryEnabledDescription": "Los eventos de Sentry Mode están supervisados.", + "vehicle.intrusionDisabledDescription": "Añade la supervisión de señales de intrusión.", + "vehicle.intrusionEnabledDescription": "Las señales de intrusión están supervisadas.", + "vehicle.virtualKeyMessage": "Vuelve después de confirmar en Tesla y, a continuación, actualiza los vehículos.", + "vehicle.actionRefused": "Acción rechazada por la API.", + "vehicle.sentryActivated": "Alerta de Sentry activada.", + "vehicle.sentryActivationFailed": "No se puede activar la alerta de Sentry.", + "vehicle.reason.missingKey": "La llave virtual no se ha añadido al vehículo.", + "vehicle.reason.unsupportedHardware": "El hardware no es compatible con la supervisión.", + "vehicle.reason.unsupportedFirmware": "El firmware no es compatible con la supervisión.", + "vehicle.reason.maxConfigs": "Ya se ha alcanzado el número máximo de configuraciones de supervisión.", + "vehicle.reason.unknown": "Vehículo omitido por un motivo desconocido.", + "vehicle.reason.withDetails": "Vehículo omitido: {{details}}", + "consentGate.kicker": "Consentimiento", + "consentGate.title": "Términos actualizados", + "consentGate.subtitle": "Los términos de consentimiento han cambiado. Acepta la nueva versión para seguir usando SentryGuard.", + "onboarding.kicker": "Configuración", + "onboarding.loadingSubtitle": "Cargando el proceso de configuración...", + "onboarding.loadingTitle": "Configuración", + "onboarding.doneTitle": "Configuración completada", + "onboarding.doneSubtitle": "SentryGuard está listo para esta cuenta.", + "onboarding.continue": "Continuar", + "onboarding.consentTitle": "Consentimiento", + "onboarding.consentSubtitle": "Acepta el tratamiento de datos necesario para las alertas de SentryGuard.", + "onboarding.accepting": "Validando...", + "onboarding.accept": "Aceptar y continuar", + "onboarding.consentUnavailable": "Consentimiento no disponible.", + "onboarding.vehiclesTitle": "Vehículos", + "onboarding.vehiclesSubtitle": "Aún no se ha detectado ningún vehículo Tesla para esta cuenta.", + "onboarding.refresh": "Actualizar", + "onboarding.vehiclesStep1": "Asegúrate de que la cuenta de Tesla tenga un vehículo.", + "onboarding.vehiclesStep2": "Asegúrate de que se hayan aceptado los permisos de Tesla.", + "onboarding.vehiclesStep3": "Actualiza este paso después de unos segundos.", + "onboarding.virtualKeyTitle": "Llave virtual", + "onboarding.virtualKeySubtitle": "Añade la llave virtual en la app de Tesla.", + "onboarding.virtualKeyAdded": "He añadido la clave", + "onboarding.virtualKeyStep1": "Abre Tesla desde este botón.", + "onboarding.virtualKeyStep2": "Aprueba la solicitud de llave virtual.", + "onboarding.virtualKeyStep3": "Vuelve a SentryGuard.", + "onboarding.virtualKeyStep4": "Comprueba que la clave esté vinculada.", + "onboarding.sentrySubtitle": "Activa la supervisión principal en al menos un vehículo.", + "onboarding.activating": "Activando...", + "onboarding.activateVehicle": "Activar {{vehicle}}", + "onboarding.breakInTitle": "Detección de intrusión", + "onboarding.breakInSubtitle": "Recibe opcionalmente una alerta ante intentos de intrusión.", + "onboarding.breakInActivate": "Activar la detección de intrusión", + "onboarding.offensiveTitle": "Respuesta ofensiva", + "onboarding.offensiveSubtitle": "Elige cómo reacciona tu vehículo cuando se detecta un intento de intrusión.", + "onboarding.readyTitle": "Todo está listo", + "onboarding.readySubtitle": "El proceso de configuración ha finalizado.", + "onboarding.finalizing": "Finalizando...", + "onboarding.finish": "Finalizar", + "onboarding.skip": "Omitir por ahora", + "onboarding.skipSetup": "Omitir la configuración por ahora", + "onboarding.resumeTitle": "Terminar la configuración", + "onboarding.vehicleEnabled": "{{vehicle}}: activado", + "onboarding.vehicleDisabled": "{{vehicle}}: inactivo", + "onboarding.vehicleKeyMissing": "{{vehicle}}: llave virtual requerida", + "onboarding.virtualKeyMissingUrl": "La URL de la llave virtual no está configurada para esta API.", + "onboarding.virtualKeyReturn": "Vuelve después de confirmar en Tesla y, a continuación, verifica la clave.", + "settings.legalSection": "Legal", + "settings.privacyPolicy": "Política de privacidad", + "settings.terms": "Términos del servicio", + "settings.deleteAccount": "Eliminar mi cuenta", + "settings.deleteAccountTitle": "Eliminar cuenta", + "settings.deleteAccountConfirm": "Esto elimina permanentemente tu cuenta y todos los datos asociados. Esta acción no se puede deshacer.", + "settings.deleteAccountCta": "Eliminar", + "settings.deleteAccountCountdown": "Eliminar ({{seconds}}s)", + "settings.deleteAccountCooldownHint": "El botón de eliminar se desbloquea tras unos segundos, para que tengas tiempo de leer esta advertencia.", + "common.or": "o", + "telegram.title": "Configuración de Telegram", + "telegram.linked": "Conectado", + "telegram.notLinked": "Pendiente", + "telegram.connected": "Tu cuenta de Telegram está conectada. Recibirás las alertas aquí.", + "telegram.disconnected": "Vincula tu cuenta de Telegram para recibir alertas del vehículo.", + "telegram.generateLink": "Generar enlace de Telegram", + "telegram.generating": "Generando...", + "telegram.waiting": "Esperando a que hagas clic en el enlace e inicies el bot...", + "telegram.linkExpires": "Este enlace caduca en {{minutes}} minutos", + "telegram.openBot": "Abrir Telegram", + "telegram.success": "¡Tu cuenta de Telegram se ha vinculado correctamente!", + "telegram.linkedOn": "Vinculado el", + "telegram.sendTest": "Enviar prueba", + "telegram.sendingTest": "Enviando...", + "telegram.unlink": "Desvincular cuenta", + "telegram.unlinking": "Desvinculando...", + "telegram.copy": "Copiar enlace", + "telegram.unlinkConfirm": "¿Seguro que quieres desvincular tu cuenta de Telegram?", + "telegram.testSent": "¡Mensaje de prueba enviado! Revisa tu Telegram.", + "onboarding.notificationsTitle": "Alertas y notificaciones", + "onboarding.notificationsSubtitle": "Activa las notificaciones push para recibir alertas en tiempo real en este teléfono. También puedes configurar Telegram más tarde en los ajustes.", + "onboarding.notificationsTelegram": "Telegram", + "onboarding.notificationsPush": "Notificaciones push", + "onboarding.notificationsPushDescription": "Permite recibir alertas instantáneas en este teléfono ante actividad sospechosa o intentos de intrusión.", + "onboarding.notificationsConfigured": "¡Configuración de notificaciones verificada!", + "onboarding.notificationsNotConfigured": "Debes activar las notificaciones push para continuar.", + "onboarding.notificationsActivatePush": "Activar", + "onboarding.notificationsPushActive": "Notificaciones push activadas en este dispositivo" +} diff --git a/apps/mobile/src/locales/fr.json b/apps/mobile/src/locales/fr.json index 9d4d618f..b3b1d40c 100644 --- a/apps/mobile/src/locales/fr.json +++ b/apps/mobile/src/locales/fr.json @@ -220,7 +220,7 @@ "onboarding.skipSetup": "Passer la configuration", "onboarding.resumeTitle": "Terminer la configuration", "onboarding.vehicleEnabled": "{{vehicle}}: activée", - "onboarding.vehicleDisabled": "{{vehicle}}: inactive", + "onboarding.vehicleDisabled": "{{vehicle}} : inactif", "onboarding.vehicleKeyMissing": "{{vehicle}}: clé virtuelle requise", "onboarding.virtualKeyMissingUrl": "URL de clé virtuelle non configurée pour cette API.", "onboarding.virtualKeyReturn": "Reviens ici après validation dans Tesla, puis vérifie la clé.", diff --git a/apps/mobile/src/locales/it.json b/apps/mobile/src/locales/it.json new file mode 100644 index 00000000..91849892 --- /dev/null +++ b/apps/mobile/src/locales/it.json @@ -0,0 +1,265 @@ +{ + "alerts.empty": "Ancora nessun avviso.", + "alerts.clear": "Cancella", + "alerts.clearConfirmTitle": "Cancellare tutti gli avvisi?", + "alerts.clearConfirmMessage": "{{count}} avviso/avvisi verranno eliminati definitivamente.", + "alerts.delete": "Elimina", + "alerts.unread": "Avviso non letto", + "alerts.error": "Impossibile caricare gli avvisi.", + "alerts.event.break_in.message": "È stato rilevato un tentativo di intrusione.", + "alerts.event.break_in.title": "Avviso di intrusione", + "alerts.event.sentry.message": "È stato rilevato un evento Sentry Mode.", + "alerts.event.sentry.title": "Avviso Sentry", + "alerts.filter.all": "Tutti", + "alerts.filter.critical": "Critico", + "alerts.filter.warning": "Attenzione", + "alerts.kicker": "Centro avvisi", + "alerts.loading": "Caricamento avvisi...", + "alerts.subtitle": "Cronologia degli eventi di sicurezza rilevati da SentryGuard.", + "alerts.title": "Avvisi", + "auth.advanced.apiPlaceholder": "Indirizzo API personalizzato", + "auth.advanced.invalid": "Impostazione avanzata non valida.", + "auth.advanced.label": "Impostazioni avanzate", + "auth.advanced.reset": "Predefinito", + "auth.advanced.resetDone": "Impostazioni predefinite ripristinate.", + "auth.advanced.save": "Salva", + "auth.advanced.saved": "Impostazioni avanzate salvate.", + "auth.advanced.virtualKeyPlaceholder": "Dominio personalizzato", + "auth.error.apiUrl": "Indirizzo API non valido. Usa un URL che inizi con http:// o https://.", + "auth.error.login": "Impossibile aprire l'accesso a Tesla.", + "auth.error.missingToken": "L'accesso è stato annullato o la risposta non includeva un token.", + "auth.error.virtualKeyUrl": "Dominio non valido. Inserisci un dominio come tuodominio.com.", + "auth.login": "Accedi a Tesla", + "auth.loginPending": "Connessione in corso...", + "auth.permissions.title": "Autorizzazioni richieste", + "auth.permissions.description": "Mancano alcune autorizzazioni Tesla. Concedile per completare l'accesso.", + "auth.permissions.fix": "Correggi le autorizzazioni", + "auth.permissions.back": "Torna all'accesso", + "auth.subtitle": "Ricevi un avviso istantaneo non appena viene rilevata un'attività sospetta intorno alla tua auto.", + "auth.title": "Monitora la tua Tesla dal telefono.", + "auth.demo.toggleLink": "Modalità demo / Revisione App Store", + "auth.demo.label": "Accesso revisore/demo", + "auth.demo.emailPlaceholder": "Email demo", + "auth.demo.passwordPlaceholder": "Password", + "auth.demo.submit": "Accedi come demo", + "auth.demo.loading": "Accesso in corso...", + "auth.demo.error": "Credenziali non valide o accesso non riuscito.", + "auth.needHelp": "Serve aiuto? Contatta l'assistenza", + "common.active": "Attivo", + "common.back": "Indietro", + "common.beta": "Beta", + "common.cancel": "Annulla", + "common.inactive": "Inattivo", + "common.loading": "Caricamento...", + "common.notProvided": "Non indicato", + "common.protected": "Protetto", + "common.toConfigure": "Da configurare", + "common.vehicleFallback": "Tesla", + "api.error.forbidden": "Accesso negato. Verifica il consenso o lo stato dell'account beta.", + "api.error.generic": "Qualcosa è andato storto. Riprova tra un momento.", + "api.error.network": "Impossibile connettersi. Verifica la connessione o l'indirizzo API.", + "api.error.notFound": "Questa azione non è disponibile al momento.", + "api.error.sessionExpired": "Sessione scaduta. Accedi di nuovo per continuare.", + "api.error.unavailable": "L'API non è al momento disponibile.", + "api.error.webCors": "L'app web non riesce a raggiungere l'API. Verifica l'indirizzo API o la configurazione CORS.", + "dashboard.configure": "Da configurare", + "dashboard.empty": "Nessun veicolo disponibile.", + "dashboard.kicker": "Sicurezza", + "dashboard.loading": "Caricamento veicoli...", + "dashboard.monitored": "Monitorati", + "dashboard.subtitleLoading": "Stato in tempo reale collegato all'API di SentryGuard.", + "dashboard.subtitleReady": "{{protectedCount}}/{{total}} veicolo/i monitorato/i.", + "dashboard.title": "Veicoli", + "dashboard.details": "Vedi dettagli", + "dashboard.virtualKey.message": "Torna dopo la conferma in Tesla, quindi aggiorna.", + "dashboard.virtualKey.missingUrl": "L'URL della chiave virtuale non è configurato per questa API.", + "dashboard.virtualKey.cardMissing": "Chiave virtuale da configurare — apri Tesla", + "dashboard.virtualKey.open": "Apri Tesla", + "dashboard.virtualKey.text": "Aggiungi la chiave in Tesla prima di attivare il monitoraggio.", + "dashboard.virtualKey.title": "Chiave virtuale non associata", + "dashboard.onboardingIncomplete.title": "Configurazione incompleta", + "dashboard.onboardingIncomplete.text": "Hai saltato la configurazione, quindi alcune funzioni potrebbero non funzionare finché non viene completata.", + "dashboard.onboardingIncomplete.resume": "Riprendi la configurazione", + "dashboard.pushBanner.title": "Avvisi non attivi su questo dispositivo", + "dashboard.pushBanner.text": "Attiva le notifiche push per ricevere avvisi di intrusione e sicurezza su questo dispositivo.", + "dashboard.pushBanner.enable": "Attiva su questo dispositivo", + "dashboard.pushBanner.dismiss": "Ignora", + "settings.account": "Account", + "settings.beta": "Beta", + "settings.betaFooter": "Membro del programma beta", + "settings.criticalOnly": "Solo critici", + "settings.criticalAlerts": "Avvisi prioritari", + "settings.criticalAlertsDescription": "Consente agli avvisi critici di suonare anche in modalità silenziosa o Non disturbare, quando il telefono lo permette.", + "settings.dndAccessButton": "Consenti Non disturbare", + "settings.dndAccessDescription": "Android blocca i suoni mentre Non disturbare è attivo. Consenti a SentryGuard di far suonare comunque gli avvisi critici.", + "settings.dndAccessTitle": "Consenti avvisi prioritari", + "settings.dark": "Scuro", + "settings.email": "Email", + "settings.error": "Impossibile caricare le impostazioni.", + "settings.language": "Lingua", + "settings.light": "Chiaro", + "settings.logout": "Esci", + "settings.name": "Nome", + "settings.notifications": "Notifiche", + "settings.profileSubtitle": "Sessione mobile locale e profilo SentryGuard.", + "settings.push": "Notifiche push", + "settings.pushError": "Impossibile attivare le notifiche push.", + "settings.pushNativeOnly": "Le notifiche push native sono disponibili solo nell'app per iOS o Android.", + "settings.pushNoToken": "Al momento non è possibile attivare le notifiche push su questo dispositivo. Le altre impostazioni sono state salvate.", + "settings.pushPermissionDenied": "Autorizzazione push negata.", + "settings.criticalAlertsUnavailable": "Questa opzione richiede un aggiornamento dell'API di SentryGuard.", + "settings.supportSection": "Supporto", + "settings.contactSupport": "Chat dal vivo", + "settings.contactSupportSubtitle": "Chatta con il nostro team tramite Crisp", + "settings.discordCommunity": "Community Discord", + "settings.discordCommunitySubtitle": "Aiuto dalla community, aggiornamenti e chat", + "settings.emailSupport": "Contattaci via email", + "settings.diagnosticSection": "Diagnostica", + "settings.exportLogs": "Esporta i log di debug", + "settings.clearLogs": "Cancella i log di debug", + "settings.logsCopied": "Log di debug copiati negli appunti.", + "settings.debugLogsFooter": "I log tecnici aiutano a diagnosticare i problemi dell'app. Non contengono password né token.", + "settings.system": "Automatico", + "settings.telegramAccount": "Account", + "settings.telegram": "Notifiche Telegram", + "settings.telegramSection": "Telegram", + "settings.telegramConnect": "Configura Telegram", + "settings.telegramConnectSubtitle": "Ricevi i tuoi avvisi anche su Telegram", + "settings.telegramLinkReturn": "Torna qui dopo aver collegato il tuo account in Telegram.", + "settings.theme": "Tema", + "settings.themeSubtitle": "Aspetto dell'interfaccia mobile", + "settings.title": "Impostazioni", + "notifications.channelName": "Avvisi SentryGuard", + "notifications.criticalChannelName": "Avvisi critici SentryGuard", + "tabs.alerts": "Avvisi", + "tabs.dashboard": "Dashboard", + "tabs.settings": "Impostazioni", + "vehicle.actions": "Azioni", + "vehicle.alertSentry": "Avviso Sentry", + "vehicle.alertIntrusion": "Avviso di intrusione", + "vehicle.authorizeOffensive": "Autorizza i comandi del veicolo", + "vehicle.cancel": "Annulla", + "vehicle.confirmDisable": "Disattivare l'avviso Sentry per questo veicolo?", + "vehicle.disable": "Disattiva", + "vehicle.disableTitle": "Disattiva avviso", + "vehicle.kicker": "Veicolo", + "vehicle.lockedKeyDescription": "Aggiungi la chiave virtuale in Tesla prima di attivare il monitoraggio.", + "vehicle.sentrySection": "Sentry Mode", + "vehicle.intrusionSection": "Intrusione", + "vehicle.monitoring": "Monitoraggio", + "vehicle.offensive": "Risposta offensiva", + "vehicle.offensiveDisabled": "Disattivata", + "vehicle.offensiveHonk": "Clacson", + "vehicle.offensiveFart": "Scoreggia", + "vehicle.offensiveDisabledDescription": "Il clacson rimane disattivato per gli avvisi di intrusione.", + "vehicle.offensiveEnabledDescription": "Il clacson si attiva quando viene rilevato un tentativo di intrusione.", + "vehicle.offensiveFartEnabledDescription": "La scoreggia si attiva quando viene rilevato un tentativo di intrusione.", + "vehicle.autoSentry": "Sentry Mode automatica", + "vehicle.autoSentryActivate": "Attiva la Sentry Mode automatica", + "vehicle.autoSentryDescription": "Attiva automaticamente la Sentry Mode quando viene rilevato un tentativo di intrusione, così le telecamere possono registrare.", + "vehicle.openingTesla": "Apertura di Tesla...", + "vehicle.openTesla": "Apri Tesla", + "vehicle.showVin": "Mostra VIN", + "vehicle.hideVin": "Nascondi VIN", + "vehicle.scopeCancelled": "L'autorizzazione Tesla è stata annullata o il token è mancante.", + "vehicle.scopeDescription": "Autorizza SentryGuard a inviare comandi alla tua Tesla prima di attivare la Sentry Mode automatica o la risposta offensiva.", + "vehicle.sentryDisabledDescription": "Attiva la raccolta dati necessaria per gli avvisi Sentry.", + "vehicle.sentryEnabledDescription": "Gli eventi Sentry Mode sono monitorati.", + "vehicle.intrusionDisabledDescription": "Aggiungi il monitoraggio dei segnali di intrusione.", + "vehicle.intrusionEnabledDescription": "I segnali di intrusione sono monitorati.", + "vehicle.virtualKeyMessage": "Torna dopo la conferma in Tesla, quindi aggiorna i veicoli.", + "vehicle.actionRefused": "Azione rifiutata dall'API.", + "vehicle.sentryActivated": "Avviso Sentry attivato.", + "vehicle.sentryActivationFailed": "Impossibile attivare l'avviso Sentry.", + "vehicle.reason.missingKey": "La chiave virtuale non è stata aggiunta al veicolo.", + "vehicle.reason.unsupportedHardware": "L'hardware non è supportato per il monitoraggio.", + "vehicle.reason.unsupportedFirmware": "Il firmware non è supportato per il monitoraggio.", + "vehicle.reason.maxConfigs": "Numero massimo di configurazioni di monitoraggio già raggiunto.", + "vehicle.reason.unknown": "Veicolo ignorato per un motivo sconosciuto.", + "vehicle.reason.withDetails": "Veicolo ignorato: {{details}}", + "consentGate.kicker": "Consenso", + "consentGate.title": "Termini aggiornati", + "consentGate.subtitle": "I termini di consenso sono cambiati. Accetta la nuova versione per continuare a usare SentryGuard.", + "onboarding.kicker": "Configurazione", + "onboarding.loadingSubtitle": "Caricamento della procedura di configurazione...", + "onboarding.loadingTitle": "Configurazione", + "onboarding.doneTitle": "Configurazione completata", + "onboarding.doneSubtitle": "SentryGuard è pronto per questo account.", + "onboarding.continue": "Continua", + "onboarding.consentTitle": "Consenso", + "onboarding.consentSubtitle": "Accetta il trattamento dei dati necessario per gli avvisi SentryGuard.", + "onboarding.accepting": "Convalida in corso...", + "onboarding.accept": "Accetta e continua", + "onboarding.consentUnavailable": "Consenso non disponibile.", + "onboarding.vehiclesTitle": "Veicoli", + "onboarding.vehiclesSubtitle": "Nessun veicolo Tesla è stato ancora rilevato per questo account.", + "onboarding.refresh": "Aggiorna", + "onboarding.vehiclesStep1": "Assicurati che l'account Tesla abbia un veicolo.", + "onboarding.vehiclesStep2": "Assicurati che le autorizzazioni Tesla siano state accettate.", + "onboarding.vehiclesStep3": "Aggiorna questo passaggio dopo alcuni secondi.", + "onboarding.virtualKeyTitle": "Chiave virtuale", + "onboarding.virtualKeySubtitle": "Aggiungi la chiave virtuale nell'app Tesla.", + "onboarding.virtualKeyAdded": "Ho aggiunto la chiave", + "onboarding.virtualKeyStep1": "Apri Tesla da questo pulsante.", + "onboarding.virtualKeyStep2": "Approva la richiesta di chiave virtuale.", + "onboarding.virtualKeyStep3": "Torna a SentryGuard.", + "onboarding.virtualKeyStep4": "Verifica che la chiave sia associata.", + "onboarding.sentrySubtitle": "Attiva il monitoraggio principale su almeno un veicolo.", + "onboarding.activating": "Attivazione in corso...", + "onboarding.activateVehicle": "Attiva {{vehicle}}", + "onboarding.breakInTitle": "Rilevamento intrusione", + "onboarding.breakInSubtitle": "Ricevi facoltativamente un avviso in caso di tentativi di intrusione.", + "onboarding.breakInActivate": "Attiva il rilevamento intrusione", + "onboarding.offensiveTitle": "Risposta offensiva", + "onboarding.offensiveSubtitle": "Scegli come reagisce il tuo veicolo quando viene rilevato un tentativo di intrusione.", + "onboarding.readyTitle": "Tutto è pronto", + "onboarding.readySubtitle": "La procedura di configurazione è completa.", + "onboarding.finalizing": "Finalizzazione in corso...", + "onboarding.finish": "Termina", + "onboarding.skip": "Salta per ora", + "onboarding.skipSetup": "Salta la configurazione per ora", + "onboarding.resumeTitle": "Termina la configurazione", + "onboarding.vehicleEnabled": "{{vehicle}}: attivato", + "onboarding.vehicleDisabled": "{{vehicle}}: inattivo", + "onboarding.vehicleKeyMissing": "{{vehicle}}: chiave virtuale richiesta", + "onboarding.virtualKeyMissingUrl": "L'URL della chiave virtuale non è configurato per questa API.", + "onboarding.virtualKeyReturn": "Torna dopo la conferma in Tesla, quindi verifica la chiave.", + "settings.legalSection": "Note legali", + "settings.privacyPolicy": "Informativa sulla privacy", + "settings.terms": "Termini di servizio", + "settings.deleteAccount": "Elimina il mio account", + "settings.deleteAccountTitle": "Elimina account", + "settings.deleteAccountConfirm": "Questa operazione elimina definitivamente il tuo account e tutti i dati associati. L'azione non può essere annullata.", + "settings.deleteAccountCta": "Elimina", + "settings.deleteAccountCountdown": "Elimina ({{seconds}}s)", + "settings.deleteAccountCooldownHint": "Il pulsante di eliminazione si sblocca dopo alcuni secondi, così hai il tempo di leggere questo avviso.", + "common.or": "oppure", + "telegram.title": "Configurazione Telegram", + "telegram.linked": "Connesso", + "telegram.notLinked": "In attesa", + "telegram.connected": "Il tuo account Telegram è connesso. Riceverai qui i tuoi avvisi.", + "telegram.disconnected": "Collega il tuo account Telegram per ricevere gli avvisi del veicolo.", + "telegram.generateLink": "Genera link Telegram", + "telegram.generating": "Generazione in corso...", + "telegram.waiting": "In attesa che tu faccia clic sul link e avvii il bot...", + "telegram.linkExpires": "Questo link scade tra {{minutes}} minuti", + "telegram.openBot": "Apri Telegram", + "telegram.success": "Il tuo account Telegram è stato collegato con successo!", + "telegram.linkedOn": "Collegato il", + "telegram.sendTest": "Invia test", + "telegram.sendingTest": "Invio in corso...", + "telegram.unlink": "Scollega account", + "telegram.unlinking": "Scollegamento in corso...", + "telegram.copy": "Copia link", + "telegram.unlinkConfirm": "Vuoi davvero scollegare il tuo account Telegram?", + "telegram.testSent": "Messaggio di prova inviato! Controlla il tuo Telegram.", + "onboarding.notificationsTitle": "Avvisi e notifiche", + "onboarding.notificationsSubtitle": "Attiva le notifiche push per ricevere avvisi in tempo reale su questo telefono. Puoi anche configurare Telegram in seguito nelle impostazioni.", + "onboarding.notificationsTelegram": "Telegram", + "onboarding.notificationsPush": "Notifiche push", + "onboarding.notificationsPushDescription": "Consente di ricevere avvisi istantanei su questo telefono in caso di attività sospetta o tentativi di intrusione.", + "onboarding.notificationsConfigured": "Configurazione delle notifiche verificata!", + "onboarding.notificationsNotConfigured": "Devi attivare le notifiche push per continuare.", + "onboarding.notificationsActivatePush": "Attiva", + "onboarding.notificationsPushActive": "Notifiche push attivate su questo dispositivo" +} diff --git a/apps/mobile/src/locales/nl.json b/apps/mobile/src/locales/nl.json new file mode 100644 index 00000000..53c6f71e --- /dev/null +++ b/apps/mobile/src/locales/nl.json @@ -0,0 +1,265 @@ +{ + "alerts.empty": "Nog geen meldingen.", + "alerts.clear": "Wissen", + "alerts.clearConfirmTitle": "Alle meldingen wissen?", + "alerts.clearConfirmMessage": "{{count}} melding(en) worden permanent verwijderd.", + "alerts.delete": "Verwijderen", + "alerts.unread": "Ongelezen melding", + "alerts.error": "Kan meldingen niet laden.", + "alerts.event.break_in.message": "Er is een inbraakpoging gedetecteerd.", + "alerts.event.break_in.title": "Inbraakmelding", + "alerts.event.sentry.message": "Er is een Sentry Mode-gebeurtenis gedetecteerd.", + "alerts.event.sentry.title": "Sentry-melding", + "alerts.filter.all": "Alle", + "alerts.filter.critical": "Kritiek", + "alerts.filter.warning": "Waarschuwing", + "alerts.kicker": "Meldingscentrum", + "alerts.loading": "Meldingen laden...", + "alerts.subtitle": "Geschiedenis van beveiligingsgebeurtenissen die door SentryGuard zijn gedetecteerd.", + "alerts.title": "Meldingen", + "auth.advanced.apiPlaceholder": "Aangepast API-adres", + "auth.advanced.invalid": "Ongeldige geavanceerde instelling.", + "auth.advanced.label": "Geavanceerde instellingen", + "auth.advanced.reset": "Standaard", + "auth.advanced.resetDone": "Standaardinstellingen hersteld.", + "auth.advanced.save": "Opslaan", + "auth.advanced.saved": "Geavanceerde instellingen opgeslagen.", + "auth.advanced.virtualKeyPlaceholder": "Aangepast domein", + "auth.error.apiUrl": "Ongeldig API-adres. Gebruik een URL die begint met http:// of https://.", + "auth.error.login": "Kan Tesla-login niet openen.", + "auth.error.missingToken": "Inloggen is geannuleerd of de callback bevatte geen token.", + "auth.error.virtualKeyUrl": "Ongeldig domein. Voer een domein in zoals jouwdomein.com.", + "auth.login": "Tesla-login", + "auth.loginPending": "Verbinden...", + "auth.permissions.title": "Machtigingen vereist", + "auth.permissions.description": "Enkele Tesla-machtigingen ontbreken. Verleen ze om het inloggen te voltooien.", + "auth.permissions.fix": "Machtigingen herstellen", + "auth.permissions.back": "Terug naar inloggen", + "auth.subtitle": "Ontvang direct een melding zodra er verdachte activiteit rond je auto wordt gedetecteerd.", + "auth.title": "Bewaak je Tesla vanaf je telefoon.", + "auth.demo.toggleLink": "Demomodus / App Store-beoordeling", + "auth.demo.label": "Beoordelaar-/demo-aanmelding", + "auth.demo.emailPlaceholder": "Demo-e-mail", + "auth.demo.passwordPlaceholder": "Wachtwoord", + "auth.demo.submit": "Aanmelden als demo", + "auth.demo.loading": "Aanmelden...", + "auth.demo.error": "Ongeldige inloggegevens of inloggen mislukt.", + "auth.needHelp": "Hulp nodig? Neem contact op met de support", + "common.active": "Actief", + "common.back": "Terug", + "common.beta": "Beta", + "common.cancel": "Annuleren", + "common.inactive": "Inactief", + "common.loading": "Laden...", + "common.notProvided": "Niet opgegeven", + "common.protected": "Beschermd", + "common.toConfigure": "Te configureren", + "common.vehicleFallback": "Tesla", + "api.error.forbidden": "Toegang geweigerd. Controleer de toestemming of de bètastatus van het account.", + "api.error.generic": "Er is iets misgegaan. Probeer het zo meteen opnieuw.", + "api.error.network": "Verbinden niet mogelijk. Controleer je verbinding of het API-adres.", + "api.error.notFound": "Deze actie is op dit moment niet beschikbaar.", + "api.error.sessionExpired": "Sessie verlopen. Meld je opnieuw aan om door te gaan.", + "api.error.unavailable": "API is momenteel niet beschikbaar.", + "api.error.webCors": "De web-app kan de API niet bereiken. Controleer het API-adres of de CORS-configuratie.", + "dashboard.configure": "Te configureren", + "dashboard.empty": "Geen voertuig beschikbaar.", + "dashboard.kicker": "Beveiliging", + "dashboard.loading": "Voertuigen laden...", + "dashboard.monitored": "Bewaakt", + "dashboard.subtitleLoading": "Live-status verbonden met de SentryGuard-API.", + "dashboard.subtitleReady": "{{protectedCount}}/{{total}} voertuig(en) bewaakt.", + "dashboard.title": "Voertuigen", + "dashboard.details": "Details bekijken", + "dashboard.virtualKey.message": "Kom terug na bevestiging in Tesla en vernieuw daarna.", + "dashboard.virtualKey.missingUrl": "De URL van de virtuele sleutel is niet geconfigureerd voor deze API.", + "dashboard.virtualKey.cardMissing": "Virtuele sleutel instellen — open Tesla", + "dashboard.virtualKey.open": "Tesla openen", + "dashboard.virtualKey.text": "Voeg de sleutel toe in Tesla voordat je de bewaking inschakelt.", + "dashboard.virtualKey.title": "Virtuele sleutel niet gekoppeld", + "dashboard.onboardingIncomplete.title": "Configuratie onvolledig", + "dashboard.onboardingIncomplete.text": "Je hebt de configuratie overgeslagen, dus sommige functies werken mogelijk pas als deze is voltooid.", + "dashboard.onboardingIncomplete.resume": "Configuratie hervatten", + "dashboard.pushBanner.title": "Meldingen inactief op dit apparaat", + "dashboard.pushBanner.text": "Schakel pushmeldingen in om inbraak- en beveiligingsmeldingen op dit apparaat te ontvangen.", + "dashboard.pushBanner.enable": "Inschakelen op dit apparaat", + "dashboard.pushBanner.dismiss": "Negeren", + "settings.account": "Account", + "settings.beta": "Beta", + "settings.betaFooter": "Lid van het bètaprogramma", + "settings.criticalOnly": "Alleen kritiek", + "settings.criticalAlerts": "Prioriteitsmeldingen", + "settings.criticalAlertsDescription": "Hiermee kunnen kritieke meldingen ook in de stille modus of Niet storen overgaan, als de telefoon dit toestaat.", + "settings.dndAccessButton": "Niet storen toestaan", + "settings.dndAccessDescription": "Android blokkeert geluiden wanneer Niet storen is ingeschakeld. Sta SentryGuard toe zodat kritieke meldingen toch kunnen overgaan.", + "settings.dndAccessTitle": "Prioriteitsmeldingen toestaan", + "settings.dark": "Donker", + "settings.email": "E-mail", + "settings.error": "Kan instellingen niet laden.", + "settings.language": "Taal", + "settings.light": "Licht", + "settings.logout": "Afmelden", + "settings.name": "Naam", + "settings.notifications": "Meldingen", + "settings.profileSubtitle": "Lokale mobiele sessie en SentryGuard-profiel.", + "settings.push": "Pushmeldingen", + "settings.pushError": "Kan pushmeldingen niet inschakelen.", + "settings.pushNativeOnly": "Native pushmeldingen zijn alleen beschikbaar in de iOS- of Android-app.", + "settings.pushNoToken": "Pushmeldingen kunnen op dit apparaat momenteel niet worden ingeschakeld. De overige instellingen zijn opgeslagen.", + "settings.pushPermissionDenied": "Pushmachtiging geweigerd.", + "settings.criticalAlertsUnavailable": "Deze optie vereist een update van de SentryGuard-API.", + "settings.supportSection": "Ondersteuning", + "settings.contactSupport": "Livechat", + "settings.contactSupportSubtitle": "Chat met ons team via Crisp", + "settings.discordCommunity": "Discord-community", + "settings.discordCommunitySubtitle": "Communityhulp, updates en chat", + "settings.emailSupport": "Neem contact met ons op via e-mail", + "settings.diagnosticSection": "Diagnostiek", + "settings.exportLogs": "Debuglogboeken exporteren", + "settings.clearLogs": "Debuglogboeken wissen", + "settings.logsCopied": "Debuglogboeken gekopieerd naar het klembord.", + "settings.debugLogsFooter": "Technische logboeken helpen bij het diagnosticeren van problemen met de app. Ze bevatten geen wachtwoorden of tokens.", + "settings.system": "Automatisch", + "settings.telegramAccount": "Account", + "settings.telegram": "Telegram-meldingen", + "settings.telegramSection": "Telegram", + "settings.telegramConnect": "Telegram instellen", + "settings.telegramConnectSubtitle": "Ontvang je meldingen ook op Telegram", + "settings.telegramLinkReturn": "Kom hier terug nadat je je account in Telegram hebt gekoppeld.", + "settings.theme": "Thema", + "settings.themeSubtitle": "Weergave van de mobiele interface", + "settings.title": "Instellingen", + "notifications.channelName": "SentryGuard-meldingen", + "notifications.criticalChannelName": "Kritieke SentryGuard-meldingen", + "tabs.alerts": "Meldingen", + "tabs.dashboard": "Dashboard", + "tabs.settings": "Instellingen", + "vehicle.actions": "Acties", + "vehicle.alertSentry": "Sentry-melding", + "vehicle.alertIntrusion": "Inbraakmelding", + "vehicle.authorizeOffensive": "Voertuigopdrachten autoriseren", + "vehicle.cancel": "Annuleren", + "vehicle.confirmDisable": "Sentry-melding voor dit voertuig uitschakelen?", + "vehicle.disable": "Uitschakelen", + "vehicle.disableTitle": "Melding uitschakelen", + "vehicle.kicker": "Voertuig", + "vehicle.lockedKeyDescription": "Voeg de virtuele sleutel toe in Tesla voordat je de bewaking inschakelt.", + "vehicle.sentrySection": "Sentry Mode", + "vehicle.intrusionSection": "Inbraak", + "vehicle.monitoring": "Bewaking", + "vehicle.offensive": "Offensieve reactie", + "vehicle.offensiveDisabled": "Uitgeschakeld", + "vehicle.offensiveHonk": "Claxon", + "vehicle.offensiveFart": "Scheet", + "vehicle.offensiveDisabledDescription": "De claxon blijft uitgeschakeld voor inbraakmeldingen.", + "vehicle.offensiveEnabledDescription": "De claxon gaat af wanneer een inbraakpoging wordt gedetecteerd.", + "vehicle.offensiveFartEnabledDescription": "De scheetopdracht gaat af wanneer een inbraakpoging wordt gedetecteerd.", + "vehicle.autoSentry": "Automatische Sentry Mode", + "vehicle.autoSentryActivate": "Automatische Sentry Mode activeren", + "vehicle.autoSentryDescription": "Schakelt de Sentry Mode automatisch in wanneer een inbraakpoging wordt gedetecteerd, zodat de camera's kunnen opnemen.", + "vehicle.openingTesla": "Tesla openen...", + "vehicle.openTesla": "Tesla openen", + "vehicle.showVin": "VIN tonen", + "vehicle.hideVin": "VIN verbergen", + "vehicle.scopeCancelled": "Tesla-autorisatie is geannuleerd of het token ontbreekt.", + "vehicle.scopeDescription": "Geef SentryGuard toestemming om opdrachten naar je Tesla te sturen voordat je de automatische Sentry Mode of de offensieve reactie inschakelt.", + "vehicle.sentryDisabledDescription": "Schakel de gegevensverzameling in die nodig is voor Sentry-meldingen.", + "vehicle.sentryEnabledDescription": "Sentry Mode-gebeurtenissen worden bewaakt.", + "vehicle.intrusionDisabledDescription": "Voeg bewaking van inbraaksignalen toe.", + "vehicle.intrusionEnabledDescription": "Inbraaksignalen worden bewaakt.", + "vehicle.virtualKeyMessage": "Kom terug na bevestiging in Tesla en vernieuw daarna de voertuigen.", + "vehicle.actionRefused": "Actie geweigerd door de API.", + "vehicle.sentryActivated": "Sentry-melding ingeschakeld.", + "vehicle.sentryActivationFailed": "Kan Sentry-melding niet inschakelen.", + "vehicle.reason.missingKey": "Virtuele sleutel is niet aan het voertuig toegevoegd.", + "vehicle.reason.unsupportedHardware": "Hardware wordt niet ondersteund voor bewaking.", + "vehicle.reason.unsupportedFirmware": "Firmware wordt niet ondersteund voor bewaking.", + "vehicle.reason.maxConfigs": "Maximumaantal bewakingsconfiguraties al bereikt.", + "vehicle.reason.unknown": "Voertuig om een onbekende reden overgeslagen.", + "vehicle.reason.withDetails": "Voertuig overgeslagen: {{details}}", + "consentGate.kicker": "Toestemming", + "consentGate.title": "Bijgewerkte voorwaarden", + "consentGate.subtitle": "De toestemmingsvoorwaarden zijn gewijzigd. Accepteer de nieuwe versie om SentryGuard te blijven gebruiken.", + "onboarding.kicker": "Configuratie", + "onboarding.loadingSubtitle": "Configuratiestroom laden...", + "onboarding.loadingTitle": "Configuratie", + "onboarding.doneTitle": "Configuratie voltooid", + "onboarding.doneSubtitle": "SentryGuard is klaar voor dit account.", + "onboarding.continue": "Doorgaan", + "onboarding.consentTitle": "Toestemming", + "onboarding.consentSubtitle": "Accepteer de gegevensverwerking die nodig is voor SentryGuard-meldingen.", + "onboarding.accepting": "Valideren...", + "onboarding.accept": "Accepteren en doorgaan", + "onboarding.consentUnavailable": "Toestemming niet beschikbaar.", + "onboarding.vehiclesTitle": "Voertuigen", + "onboarding.vehiclesSubtitle": "Er is voor dit account nog geen Tesla-voertuig gedetecteerd.", + "onboarding.refresh": "Vernieuwen", + "onboarding.vehiclesStep1": "Zorg ervoor dat het Tesla-account een voertuig heeft.", + "onboarding.vehiclesStep2": "Zorg ervoor dat de Tesla-machtigingen zijn geaccepteerd.", + "onboarding.vehiclesStep3": "Vernieuw deze stap na enkele seconden.", + "onboarding.virtualKeyTitle": "Virtuele sleutel", + "onboarding.virtualKeySubtitle": "Voeg de virtuele sleutel toe in de Tesla-app.", + "onboarding.virtualKeyAdded": "Ik heb de sleutel toegevoegd", + "onboarding.virtualKeyStep1": "Open Tesla via deze knop.", + "onboarding.virtualKeyStep2": "Keur het verzoek voor de virtuele sleutel goed.", + "onboarding.virtualKeyStep3": "Keer terug naar SentryGuard.", + "onboarding.virtualKeyStep4": "Controleer of de sleutel is gekoppeld.", + "onboarding.sentrySubtitle": "Schakel de hoofdbewaking in op ten minste één voertuig.", + "onboarding.activating": "Inschakelen...", + "onboarding.activateVehicle": "{{vehicle}} inschakelen", + "onboarding.breakInTitle": "Inbraakdetectie", + "onboarding.breakInSubtitle": "Ontvang optioneel een melding bij inbraakpogingen.", + "onboarding.breakInActivate": "Inbraakdetectie inschakelen", + "onboarding.offensiveTitle": "Offensieve reactie", + "onboarding.offensiveSubtitle": "Kies hoe je voertuig reageert wanneer een inbraakpoging wordt gedetecteerd.", + "onboarding.readyTitle": "Alles is klaar", + "onboarding.readySubtitle": "De configuratiestroom is voltooid.", + "onboarding.finalizing": "Afronden...", + "onboarding.finish": "Voltooien", + "onboarding.skip": "Voorlopig overslaan", + "onboarding.skipSetup": "Configuratie voorlopig overslaan", + "onboarding.resumeTitle": "Configuratie voltooien", + "onboarding.vehicleEnabled": "{{vehicle}}: ingeschakeld", + "onboarding.vehicleDisabled": "{{vehicle}}: inactief", + "onboarding.vehicleKeyMissing": "{{vehicle}}: virtuele sleutel vereist", + "onboarding.virtualKeyMissingUrl": "De URL van de virtuele sleutel is niet geconfigureerd voor deze API.", + "onboarding.virtualKeyReturn": "Kom terug na bevestiging in Tesla en controleer daarna de sleutel.", + "settings.legalSection": "Juridisch", + "settings.privacyPolicy": "Privacybeleid", + "settings.terms": "Servicevoorwaarden", + "settings.deleteAccount": "Mijn account verwijderen", + "settings.deleteAccountTitle": "Account verwijderen", + "settings.deleteAccountConfirm": "Hiermee worden je account en alle bijbehorende gegevens permanent verwijderd. Deze actie kan niet ongedaan worden gemaakt.", + "settings.deleteAccountCta": "Verwijderen", + "settings.deleteAccountCountdown": "Verwijderen ({{seconds}}s)", + "settings.deleteAccountCooldownHint": "De verwijderknop wordt na enkele seconden vrijgegeven, zodat je tijd hebt om deze waarschuwing te lezen.", + "common.or": "of", + "telegram.title": "Telegram-configuratie", + "telegram.linked": "Verbonden", + "telegram.notLinked": "In afwachting", + "telegram.connected": "Je Telegram-account is verbonden. Je ontvangt hier je meldingen.", + "telegram.disconnected": "Koppel je Telegram-account om voertuigmeldingen te ontvangen.", + "telegram.generateLink": "Telegram-link genereren", + "telegram.generating": "Genereren...", + "telegram.waiting": "Wachten tot je op de link klikt en de bot start...", + "telegram.linkExpires": "Deze link verloopt over {{minutes}} minuten", + "telegram.openBot": "Telegram openen", + "telegram.success": "Je Telegram-account is succesvol gekoppeld!", + "telegram.linkedOn": "Gekoppeld op", + "telegram.sendTest": "Test verzenden", + "telegram.sendingTest": "Verzenden...", + "telegram.unlink": "Account ontkoppelen", + "telegram.unlinking": "Ontkoppelen...", + "telegram.copy": "Link kopiëren", + "telegram.unlinkConfirm": "Weet je zeker dat je je Telegram-account wilt ontkoppelen?", + "telegram.testSent": "Testbericht verzonden! Controleer je Telegram.", + "onboarding.notificationsTitle": "Alarmen & meldingen", + "onboarding.notificationsSubtitle": "Schakel pushmeldingen in om realtime alarmen op deze telefoon te ontvangen. Je kunt Telegram later ook configureren in de instellingen.", + "onboarding.notificationsTelegram": "Telegram", + "onboarding.notificationsPush": "Pushmeldingen", + "onboarding.notificationsPushDescription": "Hiermee ontvang je direct alarmen op deze telefoon bij verdachte activiteit of inbraakpogingen.", + "onboarding.notificationsConfigured": "Meldingsconfiguratie geverifieerd!", + "onboarding.notificationsNotConfigured": "Je moet pushmeldingen inschakelen om door te gaan.", + "onboarding.notificationsActivatePush": "Inschakelen", + "onboarding.notificationsPushActive": "Pushmeldingen ingeschakeld op dit apparaat" +} diff --git a/apps/mobile/src/locales/no.json b/apps/mobile/src/locales/no.json new file mode 100644 index 00000000..84ef097d --- /dev/null +++ b/apps/mobile/src/locales/no.json @@ -0,0 +1,265 @@ +{ + "alerts.empty": "Ingen varsler ennå.", + "alerts.clear": "Tøm", + "alerts.clearConfirmTitle": "Tømme alle varsler?", + "alerts.clearConfirmMessage": "{{count}} varsel/varsler blir slettet permanent.", + "alerts.delete": "Slett", + "alerts.unread": "Ulest varsel", + "alerts.error": "Kan ikke laste varsler.", + "alerts.event.break_in.message": "Et innbruddsforsøk ble oppdaget.", + "alerts.event.break_in.title": "Innbruddsvarsel", + "alerts.event.sentry.message": "En Sentry-hendelse ble oppdaget.", + "alerts.event.sentry.title": "Sentry-varsel", + "alerts.filter.all": "Alle", + "alerts.filter.critical": "Kritisk", + "alerts.filter.warning": "Advarsel", + "alerts.kicker": "Varslingssenter", + "alerts.loading": "Laster varsler...", + "alerts.subtitle": "Historikk over sikkerhetshendelser oppdaget av SentryGuard.", + "alerts.title": "Varsler", + "auth.advanced.apiPlaceholder": "Egendefinert API-adresse", + "auth.advanced.invalid": "Ugyldig avansert innstilling.", + "auth.advanced.label": "Avanserte innstillinger", + "auth.advanced.reset": "Standard", + "auth.advanced.resetDone": "Standardinnstillinger gjenopprettet.", + "auth.advanced.save": "Lagre", + "auth.advanced.saved": "Avanserte innstillinger lagret.", + "auth.advanced.virtualKeyPlaceholder": "Egendefinert domene", + "auth.error.apiUrl": "Ugyldig API-adresse. Bruk en URL som starter med http:// eller https://.", + "auth.error.login": "Kan ikke åpne Tesla-innlogging.", + "auth.error.missingToken": "Innloggingen ble avbrutt, eller callback-en inneholdt ikke et token.", + "auth.error.virtualKeyUrl": "Ugyldig domene. Skriv inn et domene som dittdomene.com.", + "auth.login": "Tesla-innlogging", + "auth.loginPending": "Kobler til...", + "auth.permissions.title": "Tillatelser kreves", + "auth.permissions.description": "Noen Tesla-tillatelser mangler. Gi dem for å fullføre innloggingen.", + "auth.permissions.fix": "Korriger tillatelser", + "auth.permissions.back": "Tilbake til innlogging", + "auth.subtitle": "Få et øyeblikkelig varsel idet mistenkelig aktivitet oppdages rundt bilen din.", + "auth.title": "Overvåk Teslaen din fra telefonen.", + "auth.demo.toggleLink": "Demomodus / App Store-vurdering", + "auth.demo.label": "Anmelder-/demoinnlogging", + "auth.demo.emailPlaceholder": "Demo-e-post", + "auth.demo.passwordPlaceholder": "Passord", + "auth.demo.submit": "Logg inn som demo", + "auth.demo.loading": "Logger inn...", + "auth.demo.error": "Ugyldig påloggingsinformasjon eller mislykket innlogging.", + "auth.needHelp": "Trenger du hjelp? Kontakt support", + "common.active": "Aktiv", + "common.back": "Tilbake", + "common.beta": "Beta", + "common.cancel": "Avbryt", + "common.inactive": "Inaktiv", + "common.loading": "Laster...", + "common.notProvided": "Ikke oppgitt", + "common.protected": "Beskyttet", + "common.toConfigure": "Skal konfigureres", + "common.vehicleFallback": "Tesla", + "api.error.forbidden": "Tilgang avvist. Kontroller samtykke eller betakontostatus.", + "api.error.generic": "Noe gikk galt. Prøv igjen om et øyeblikk.", + "api.error.network": "Kan ikke koble til. Kontroller tilkoblingen eller API-adressen.", + "api.error.notFound": "Denne handlingen er ikke tilgjengelig akkurat nå.", + "api.error.sessionExpired": "Økten er utløpt. Logg inn igjen for å fortsette.", + "api.error.unavailable": "API-en er utilgjengelig for øyeblikket.", + "api.error.webCors": "Nettappen kan ikke nå API-en. Kontroller API-adressen eller CORS-konfigurasjonen.", + "dashboard.configure": "Skal konfigureres", + "dashboard.empty": "Ingen kjøretøy tilgjengelig.", + "dashboard.kicker": "Sikkerhet", + "dashboard.loading": "Laster kjøretøy...", + "dashboard.monitored": "Overvåket", + "dashboard.subtitleLoading": "Sanntidsstatus koblet til SentryGuard-API-en.", + "dashboard.subtitleReady": "{{protectedCount}}/{{total}} kjøretøy overvåket.", + "dashboard.title": "Kjøretøy", + "dashboard.details": "Vis detaljer", + "dashboard.virtualKey.message": "Kom tilbake etter bekreftelse i Tesla, og oppdater deretter.", + "dashboard.virtualKey.missingUrl": "URL for virtuell nøkkel er ikke konfigurert for denne API-en.", + "dashboard.virtualKey.cardMissing": "Virtuell nøkkel må settes opp — åpne Tesla", + "dashboard.virtualKey.open": "Åpne Tesla", + "dashboard.virtualKey.text": "Legg til nøkkelen i Tesla før du aktiverer overvåking.", + "dashboard.virtualKey.title": "Virtuell nøkkel ikke paret", + "dashboard.onboardingIncomplete.title": "Konfigurasjon ufullstendig", + "dashboard.onboardingIncomplete.text": "Du hoppet over konfigurasjonen, så enkelte funksjoner fungerer kanskje ikke før den er fullført.", + "dashboard.onboardingIncomplete.resume": "Fortsett konfigurasjon", + "dashboard.pushBanner.title": "Varsler er inaktive på denne enheten", + "dashboard.pushBanner.text": "Aktiver push-varsler for å motta innbrudds- og sikkerhetsvarsler på denne enheten.", + "dashboard.pushBanner.enable": "Aktiver på denne enheten", + "dashboard.pushBanner.dismiss": "Lukk", + "settings.account": "Konto", + "settings.beta": "Beta", + "settings.betaFooter": "Medlem av betaprogrammet", + "settings.criticalOnly": "Kun kritiske", + "settings.criticalAlerts": "Prioriterte varsler", + "settings.criticalAlertsDescription": "Lar kritiske varsler ringe selv i stillemodus eller Ikke forstyrr, når telefonen tillater det.", + "settings.dndAccessButton": "Tillat Ikke forstyrr", + "settings.dndAccessDescription": "Android blokkerer lyder mens Ikke forstyrr er aktivert. Tillat SentryGuard slik at kritiske varsler likevel kan ringe.", + "settings.dndAccessTitle": "Tillat prioriterte varsler", + "settings.dark": "Mørk", + "settings.email": "E-post", + "settings.error": "Kan ikke laste innstillinger.", + "settings.language": "Språk", + "settings.light": "Lys", + "settings.logout": "Logg ut", + "settings.name": "Navn", + "settings.notifications": "Varsler", + "settings.profileSubtitle": "Lokal mobiløkt og SentryGuard-profil.", + "settings.push": "Push-varsler", + "settings.pushError": "Kan ikke aktivere push-varsler.", + "settings.pushNativeOnly": "Native push-varsler er kun tilgjengelige i iOS- eller Android-appen.", + "settings.pushNoToken": "Push-varsler kan ikke aktiveres på denne enheten akkurat nå. De andre innstillingene ble lagret.", + "settings.pushPermissionDenied": "Push-tillatelse avvist.", + "settings.criticalAlertsUnavailable": "Dette alternativet krever en oppdatering av SentryGuard-API-en.", + "settings.supportSection": "Support", + "settings.contactSupport": "Live chat", + "settings.contactSupportSubtitle": "Chat med teamet vårt via Crisp", + "settings.discordCommunity": "Discord-fellesskap", + "settings.discordCommunitySubtitle": "Fellesskapshjelp, oppdateringer og prat", + "settings.emailSupport": "Kontakt oss på e-post", + "settings.diagnosticSection": "Diagnostikk", + "settings.exportLogs": "Eksporter feilsøkingslogger", + "settings.clearLogs": "Tøm feilsøkingslogger", + "settings.logsCopied": "Feilsøkingslogger kopiert til utklippstavlen.", + "settings.debugLogsFooter": "Tekniske logger hjelper med å diagnostisere problemer i appen. De inneholder ingen passord eller tokener.", + "settings.system": "Automatisk", + "settings.telegramAccount": "Konto", + "settings.telegram": "Telegram-varsler", + "settings.telegramSection": "Telegram", + "settings.telegramConnect": "Konfigurer Telegram", + "settings.telegramConnectSubtitle": "Motta varslene dine også på Telegram", + "settings.telegramLinkReturn": "Kom tilbake hit etter at du har koblet til kontoen din i Telegram.", + "settings.theme": "Tema", + "settings.themeSubtitle": "Utseende på mobilgrensesnittet", + "settings.title": "Innstillinger", + "notifications.channelName": "SentryGuard-varsler", + "notifications.criticalChannelName": "Kritiske SentryGuard-varsler", + "tabs.alerts": "Varsler", + "tabs.dashboard": "Dashbord", + "tabs.settings": "Innstillinger", + "vehicle.actions": "Handlinger", + "vehicle.alertSentry": "Sentry-varsel", + "vehicle.alertIntrusion": "Innbruddsvarsel", + "vehicle.authorizeOffensive": "Autoriser kjøretøykommandoer", + "vehicle.cancel": "Avbryt", + "vehicle.confirmDisable": "Deaktivere Sentry-varsel for dette kjøretøyet?", + "vehicle.disable": "Deaktiver", + "vehicle.disableTitle": "Deaktiver varsel", + "vehicle.kicker": "Kjøretøy", + "vehicle.lockedKeyDescription": "Legg til virtuell nøkkel i Tesla før du aktiverer overvåking.", + "vehicle.sentrySection": "Sentry Mode", + "vehicle.intrusionSection": "Innbrudd", + "vehicle.monitoring": "Overvåking", + "vehicle.offensive": "Offensiv respons", + "vehicle.offensiveDisabled": "Deaktivert", + "vehicle.offensiveHonk": "Horn", + "vehicle.offensiveFart": "Promp", + "vehicle.offensiveDisabledDescription": "Hornet forblir deaktivert for innbruddsvarsler.", + "vehicle.offensiveEnabledDescription": "Hornet utløses når et innbruddsforsøk oppdages.", + "vehicle.offensiveFartEnabledDescription": "Promp-kommandoen utløses når et innbruddsforsøk oppdages.", + "vehicle.autoSentry": "Automatisk Sentry Mode", + "vehicle.autoSentryActivate": "Aktiver automatisk Sentry Mode", + "vehicle.autoSentryDescription": "Slår på Sentry Mode automatisk når et innbruddsforsøk oppdages, slik at kameraene kan ta opp.", + "vehicle.openingTesla": "Åpner Tesla...", + "vehicle.openTesla": "Åpne Tesla", + "vehicle.showVin": "Vis VIN", + "vehicle.hideVin": "Skjul VIN", + "vehicle.scopeCancelled": "Tesla-autorisasjonen ble avbrutt, eller token mangler.", + "vehicle.scopeDescription": "Gi SentryGuard tillatelse til å sende kommandoer til Teslaen din før du aktiverer automatisk Sentry Mode eller offensiv respons.", + "vehicle.sentryDisabledDescription": "Aktiver datainnsamlingen som kreves for Sentry-varsler.", + "vehicle.sentryEnabledDescription": "Sentry Mode-hendelser overvåkes.", + "vehicle.intrusionDisabledDescription": "Legg til overvåking av innbruddssignaler.", + "vehicle.intrusionEnabledDescription": "Innbruddssignaler overvåkes.", + "vehicle.virtualKeyMessage": "Kom tilbake etter bekreftelse i Tesla, og oppdater deretter kjøretøyene.", + "vehicle.actionRefused": "Handling avvist av API-en.", + "vehicle.sentryActivated": "Sentry-varsel aktivert.", + "vehicle.sentryActivationFailed": "Kan ikke aktivere Sentry-varsel.", + "vehicle.reason.missingKey": "Virtuell nøkkel er ikke lagt til kjøretøyet.", + "vehicle.reason.unsupportedHardware": "Maskinvaren støttes ikke for overvåking.", + "vehicle.reason.unsupportedFirmware": "Fastvaren støttes ikke for overvåking.", + "vehicle.reason.maxConfigs": "Maksimalt antall overvåkingskonfigurasjoner er allerede nådd.", + "vehicle.reason.unknown": "Kjøretøyet ble hoppet over av ukjent årsak.", + "vehicle.reason.withDetails": "Kjøretøy hoppet over: {{details}}", + "consentGate.kicker": "Samtykke", + "consentGate.title": "Oppdaterte vilkår", + "consentGate.subtitle": "Samtykkevilkårene har endret seg. Godta den nye versjonen for å fortsette å bruke SentryGuard.", + "onboarding.kicker": "Konfigurasjon", + "onboarding.loadingSubtitle": "Laster konfigurasjonsflyt...", + "onboarding.loadingTitle": "Konfigurasjon", + "onboarding.doneTitle": "Konfigurasjon fullført", + "onboarding.doneSubtitle": "SentryGuard er klar for denne kontoen.", + "onboarding.continue": "Fortsett", + "onboarding.consentTitle": "Samtykke", + "onboarding.consentSubtitle": "Godta databehandlingen som kreves for SentryGuard-varsler.", + "onboarding.accepting": "Validerer...", + "onboarding.accept": "Godta og fortsett", + "onboarding.consentUnavailable": "Samtykke er utilgjengelig.", + "onboarding.vehiclesTitle": "Kjøretøy", + "onboarding.vehiclesSubtitle": "Ingen Tesla-kjøretøy er oppdaget for denne kontoen ennå.", + "onboarding.refresh": "Oppdater", + "onboarding.vehiclesStep1": "Kontroller at Tesla-kontoen har et kjøretøy.", + "onboarding.vehiclesStep2": "Kontroller at Tesla-tillatelsene ble godtatt.", + "onboarding.vehiclesStep3": "Oppdater dette trinnet etter noen sekunder.", + "onboarding.virtualKeyTitle": "Virtuell nøkkel", + "onboarding.virtualKeySubtitle": "Legg til virtuell nøkkel i Tesla-appen.", + "onboarding.virtualKeyAdded": "Jeg la til nøkkelen", + "onboarding.virtualKeyStep1": "Åpne Tesla fra denne knappen.", + "onboarding.virtualKeyStep2": "Godkjenn forespørselen om virtuell nøkkel.", + "onboarding.virtualKeyStep3": "Gå tilbake til SentryGuard.", + "onboarding.virtualKeyStep4": "Kontroller at nøkkelen er paret.", + "onboarding.sentrySubtitle": "Aktiver hovedovervåking på minst ett kjøretøy.", + "onboarding.activating": "Aktiverer...", + "onboarding.activateVehicle": "Aktiver {{vehicle}}", + "onboarding.breakInTitle": "Innbruddsdeteksjon", + "onboarding.breakInSubtitle": "Få eventuelt varsel om innbruddsforsøk.", + "onboarding.breakInActivate": "Aktiver innbruddsdeteksjon", + "onboarding.offensiveTitle": "Offensiv respons", + "onboarding.offensiveSubtitle": "Velg hvordan kjøretøyet ditt reagerer når et innbruddsforsøk oppdages.", + "onboarding.readyTitle": "Alt er klart", + "onboarding.readySubtitle": "Konfigurasjonsflyten er fullført.", + "onboarding.finalizing": "Fullfører...", + "onboarding.finish": "Fullfør", + "onboarding.skip": "Hopp over for nå", + "onboarding.skipSetup": "Hopp over konfigurasjon for nå", + "onboarding.resumeTitle": "Fullfør konfigurasjon", + "onboarding.vehicleEnabled": "{{vehicle}}: aktivert", + "onboarding.vehicleDisabled": "{{vehicle}}: inaktiv", + "onboarding.vehicleKeyMissing": "{{vehicle}}: virtuell nøkkel kreves", + "onboarding.virtualKeyMissingUrl": "URL for virtuell nøkkel er ikke konfigurert for denne API-en.", + "onboarding.virtualKeyReturn": "Kom tilbake etter bekreftelse i Tesla, og kontroller deretter nøkkelen.", + "settings.legalSection": "Juridisk", + "settings.privacyPolicy": "Personvernerklæring", + "settings.terms": "Vilkår for bruk", + "settings.deleteAccount": "Slett kontoen min", + "settings.deleteAccountTitle": "Slett konto", + "settings.deleteAccountConfirm": "Dette sletter kontoen din og alle tilknyttede data permanent. Denne handlingen kan ikke angres.", + "settings.deleteAccountCta": "Slett", + "settings.deleteAccountCountdown": "Slett ({{seconds}}s)", + "settings.deleteAccountCooldownHint": "Slett-knappen låses opp etter noen sekunder, slik at du får tid til å lese denne advarselen.", + "common.or": "eller", + "telegram.title": "Telegram-konfigurasjon", + "telegram.linked": "Tilkoblet", + "telegram.notLinked": "Venter", + "telegram.connected": "Telegram-kontoen din er tilkoblet. Du mottar varslene dine her.", + "telegram.disconnected": "Koble til Telegram-kontoen din for å motta kjøretøyvarsler.", + "telegram.generateLink": "Generer Telegram-lenke", + "telegram.generating": "Genererer...", + "telegram.waiting": "Venter på at du klikker på lenken og starter boten...", + "telegram.linkExpires": "Denne lenken utløper om {{minutes}} minutter", + "telegram.openBot": "Åpne Telegram", + "telegram.success": "Telegram-kontoen din er koblet til!", + "telegram.linkedOn": "Tilkoblet", + "telegram.sendTest": "Send test", + "telegram.sendingTest": "Sender...", + "telegram.unlink": "Koble fra konto", + "telegram.unlinking": "Kobler fra...", + "telegram.copy": "Kopier lenke", + "telegram.unlinkConfirm": "Er du sikker på at du vil koble fra Telegram-kontoen din?", + "telegram.testSent": "Testmelding sendt! Sjekk Telegram.", + "onboarding.notificationsTitle": "Varsler og varslinger", + "onboarding.notificationsSubtitle": "Aktiver push-varsler for å motta sanntidsvarsler på denne telefonen. Du kan også konfigurere Telegram senere i innstillingene.", + "onboarding.notificationsTelegram": "Telegram", + "onboarding.notificationsPush": "Push-varsler", + "onboarding.notificationsPushDescription": "Lar deg motta øyeblikkelige varsler på denne telefonen ved mistenkelig aktivitet eller innbruddsforsøk.", + "onboarding.notificationsConfigured": "Varslingskonfigurasjon bekreftet!", + "onboarding.notificationsNotConfigured": "Du må aktivere push-varsler for å fortsette.", + "onboarding.notificationsActivatePush": "Aktiver", + "onboarding.notificationsPushActive": "Push-varsler aktivert på denne enheten" +} diff --git a/apps/mobile/src/locales/sv.json b/apps/mobile/src/locales/sv.json new file mode 100644 index 00000000..c2c9da5f --- /dev/null +++ b/apps/mobile/src/locales/sv.json @@ -0,0 +1,265 @@ +{ + "alerts.empty": "Inga varningar ännu.", + "alerts.clear": "Rensa", + "alerts.clearConfirmTitle": "Rensa alla varningar?", + "alerts.clearConfirmMessage": "{{count}} varning(ar) raderas permanent.", + "alerts.delete": "Radera", + "alerts.unread": "Oläst varning", + "alerts.error": "Det går inte att läsa in varningar.", + "alerts.event.break_in.message": "Ett inbrottsförsök upptäcktes.", + "alerts.event.break_in.title": "Inbrottsvarning", + "alerts.event.sentry.message": "En Sentry Mode-händelse upptäcktes.", + "alerts.event.sentry.title": "Sentry-varning", + "alerts.filter.all": "Alla", + "alerts.filter.critical": "Kritisk", + "alerts.filter.warning": "Varning", + "alerts.kicker": "Varningscenter", + "alerts.loading": "Läser in varningar...", + "alerts.subtitle": "Historik över säkerhetshändelser som upptäckts av SentryGuard.", + "alerts.title": "Varningar", + "auth.advanced.apiPlaceholder": "Anpassad API-adress", + "auth.advanced.invalid": "Ogiltig avancerad inställning.", + "auth.advanced.label": "Avancerade inställningar", + "auth.advanced.reset": "Standard", + "auth.advanced.resetDone": "Standardinställningar återställda.", + "auth.advanced.save": "Spara", + "auth.advanced.saved": "Avancerade inställningar sparade.", + "auth.advanced.virtualKeyPlaceholder": "Anpassad domän", + "auth.error.apiUrl": "Ogiltig API-adress. Använd en URL som börjar med http:// eller https://.", + "auth.error.login": "Det går inte att öppna Tesla-inloggningen.", + "auth.error.missingToken": "Inloggningen avbröts eller så innehöll återanropet inget token.", + "auth.error.virtualKeyUrl": "Ogiltig domän. Ange en domän som dindomän.com.", + "auth.login": "Tesla-inloggning", + "auth.loginPending": "Ansluter...", + "auth.permissions.title": "Behörigheter krävs", + "auth.permissions.description": "Vissa Tesla-behörigheter saknas. Bevilja dem för att slutföra inloggningen.", + "auth.permissions.fix": "Korrigera behörigheter", + "auth.permissions.back": "Tillbaka till inloggning", + "auth.subtitle": "Få en omedelbar varning i samma stund som misstänkt aktivitet upptäcks runt din bil.", + "auth.title": "Övervaka din Tesla från telefonen.", + "auth.demo.toggleLink": "Demoläge / App Store-granskning", + "auth.demo.label": "Granskare/demo-inloggning", + "auth.demo.emailPlaceholder": "Demo-e-post", + "auth.demo.passwordPlaceholder": "Lösenord", + "auth.demo.submit": "Logga in som demo", + "auth.demo.loading": "Loggar in...", + "auth.demo.error": "Ogiltiga uppgifter eller misslyckad inloggning.", + "auth.needHelp": "Behöver du hjälp? Kontakta supporten", + "common.active": "Aktiv", + "common.back": "Tillbaka", + "common.beta": "Beta", + "common.cancel": "Avbryt", + "common.inactive": "Inaktiv", + "common.loading": "Läser in...", + "common.notProvided": "Ej angivet", + "common.protected": "Skyddad", + "common.toConfigure": "Att konfigurera", + "common.vehicleFallback": "Tesla", + "api.error.forbidden": "Åtkomst nekad. Kontrollera samtycke eller betakontostatus.", + "api.error.generic": "Något gick fel. Försök igen om en stund.", + "api.error.network": "Det går inte att ansluta. Kontrollera din anslutning eller API-adressen.", + "api.error.notFound": "Den här åtgärden är inte tillgänglig just nu.", + "api.error.sessionExpired": "Sessionen har gått ut. Logga in igen för att fortsätta.", + "api.error.unavailable": "API:et är inte tillgängligt för tillfället.", + "api.error.webCors": "Webbappen kan inte nå API:et. Kontrollera API-adressen eller CORS-konfigurationen.", + "dashboard.configure": "Att konfigurera", + "dashboard.empty": "Inget fordon tillgängligt.", + "dashboard.kicker": "Säkerhet", + "dashboard.loading": "Läser in fordon...", + "dashboard.monitored": "Övervakade", + "dashboard.subtitleLoading": "Realtidsstatus ansluten till SentryGuard-API:et.", + "dashboard.subtitleReady": "{{protectedCount}}/{{total}} fordon övervakas.", + "dashboard.title": "Fordon", + "dashboard.details": "Visa detaljer", + "dashboard.virtualKey.message": "Kom tillbaka efter att du bekräftat i Tesla och uppdatera sedan.", + "dashboard.virtualKey.missingUrl": "URL:en för den virtuella nyckeln är inte konfigurerad för det här API:et.", + "dashboard.virtualKey.cardMissing": "Virtuell nyckel att konfigurera — öppna Tesla", + "dashboard.virtualKey.open": "Öppna Tesla", + "dashboard.virtualKey.text": "Lägg till nyckeln i Tesla innan du aktiverar övervakningen.", + "dashboard.virtualKey.title": "Virtuell nyckel inte parkopplad", + "dashboard.onboardingIncomplete.title": "Konfigurationen är ofullständig", + "dashboard.onboardingIncomplete.text": "Du hoppade över konfigurationen, så vissa funktioner kanske inte fungerar förrän den är klar.", + "dashboard.onboardingIncomplete.resume": "Återuppta konfigurationen", + "dashboard.pushBanner.title": "Varningar inaktiva på den här enheten", + "dashboard.pushBanner.text": "Aktivera pushaviseringar för att få inbrotts- och säkerhetsvarningar på den här enheten.", + "dashboard.pushBanner.enable": "Aktivera på den här enheten", + "dashboard.pushBanner.dismiss": "Stäng", + "settings.account": "Konto", + "settings.beta": "Beta", + "settings.betaFooter": "Medlem i betaprogrammet", + "settings.criticalOnly": "Endast kritiska", + "settings.criticalAlerts": "Prioriterade varningar", + "settings.criticalAlertsDescription": "Gör att kritiska varningar kan ringa även i tyst läge eller Stör ej, när telefonen tillåter det.", + "settings.dndAccessButton": "Tillåt Stör ej", + "settings.dndAccessDescription": "Android blockerar ljud när Stör ej är aktiverat. Tillåt SentryGuard så att kritiska varningar ändå kan ringa.", + "settings.dndAccessTitle": "Tillåt prioriterade varningar", + "settings.dark": "Mörkt", + "settings.email": "E-post", + "settings.error": "Det går inte att läsa in inställningarna.", + "settings.language": "Språk", + "settings.light": "Ljust", + "settings.logout": "Logga ut", + "settings.name": "Namn", + "settings.notifications": "Aviseringar", + "settings.profileSubtitle": "Lokal mobilsession och SentryGuard-profil.", + "settings.push": "Pushaviseringar", + "settings.pushError": "Det går inte att aktivera pushaviseringar.", + "settings.pushNativeOnly": "Inbyggda pushaviseringar är endast tillgängliga i iOS- eller Android-appen.", + "settings.pushNoToken": "Pushaviseringar kan inte aktiveras på den här enheten just nu. De övriga inställningarna sparades.", + "settings.pushPermissionDenied": "Pushbehörighet nekad.", + "settings.criticalAlertsUnavailable": "Det här alternativet kräver en uppdatering av SentryGuard-API:et.", + "settings.supportSection": "Support", + "settings.contactSupport": "Livechatt", + "settings.contactSupportSubtitle": "Chatta med vårt team via Crisp", + "settings.discordCommunity": "Discord-gemenskap", + "settings.discordCommunitySubtitle": "Gemenskapshjälp, uppdateringar och chatt", + "settings.emailSupport": "Kontakta oss via e-post", + "settings.diagnosticSection": "Diagnostik", + "settings.exportLogs": "Exportera felsökningsloggar", + "settings.clearLogs": "Rensa felsökningsloggar", + "settings.logsCopied": "Felsökningsloggar kopierade till urklipp.", + "settings.debugLogsFooter": "Tekniska loggar hjälper till att diagnostisera problem i appen. De innehåller inga lösenord eller tokens.", + "settings.system": "Automatiskt", + "settings.telegramAccount": "Konto", + "settings.telegram": "Telegram-aviseringar", + "settings.telegramSection": "Telegram", + "settings.telegramConnect": "Konfigurera Telegram", + "settings.telegramConnectSubtitle": "Ta emot dina varningar även på Telegram", + "settings.telegramLinkReturn": "Kom tillbaka hit efter att du har länkat ditt konto i Telegram.", + "settings.theme": "Tema", + "settings.themeSubtitle": "Det mobila gränssnittets utseende", + "settings.title": "Inställningar", + "notifications.channelName": "SentryGuard-varningar", + "notifications.criticalChannelName": "Kritiska SentryGuard-varningar", + "tabs.alerts": "Varningar", + "tabs.dashboard": "Översikt", + "tabs.settings": "Inställningar", + "vehicle.actions": "Åtgärder", + "vehicle.alertSentry": "Sentry-varning", + "vehicle.alertIntrusion": "Inbrottsvarning", + "vehicle.authorizeOffensive": "Godkänn fordonskommandon", + "vehicle.cancel": "Avbryt", + "vehicle.confirmDisable": "Inaktivera Sentry-varning för det här fordonet?", + "vehicle.disable": "Inaktivera", + "vehicle.disableTitle": "Inaktivera varning", + "vehicle.kicker": "Fordon", + "vehicle.lockedKeyDescription": "Lägg till den virtuella nyckeln i Tesla innan du aktiverar övervakningen.", + "vehicle.sentrySection": "Sentry Mode", + "vehicle.intrusionSection": "Inbrott", + "vehicle.monitoring": "Övervakning", + "vehicle.offensive": "Offensiv respons", + "vehicle.offensiveDisabled": "Inaktiverat", + "vehicle.offensiveHonk": "Tuta", + "vehicle.offensiveFart": "Prutt", + "vehicle.offensiveDisabledDescription": "Tutan förblir inaktiverad för inbrottsvarningar.", + "vehicle.offensiveEnabledDescription": "Tutan utlöses när ett inbrottsförsök upptäcks.", + "vehicle.offensiveFartEnabledDescription": "Pruttkommandot utlöses när ett inbrottsförsök upptäcks.", + "vehicle.autoSentry": "Automatiskt Sentry Mode", + "vehicle.autoSentryActivate": "Aktivera automatiskt Sentry Mode", + "vehicle.autoSentryDescription": "Aktiverar Sentry Mode automatiskt när ett inbrottsförsök upptäcks så att kamerorna kan spela in.", + "vehicle.openingTesla": "Öppnar Tesla...", + "vehicle.openTesla": "Öppna Tesla", + "vehicle.showVin": "Visa VIN", + "vehicle.hideVin": "Dölj VIN", + "vehicle.scopeCancelled": "Tesla-auktoriseringen avbröts eller så saknas token.", + "vehicle.scopeDescription": "Ge SentryGuard behörighet att skicka kommandon till din Tesla innan du aktiverar automatiskt Sentry Mode eller offensiv respons.", + "vehicle.sentryDisabledDescription": "Aktivera den datainsamling som krävs för Sentry-varningar.", + "vehicle.sentryEnabledDescription": "Sentry Mode-händelser övervakas.", + "vehicle.intrusionDisabledDescription": "Lägg till övervakning av inbrottssignaler.", + "vehicle.intrusionEnabledDescription": "Inbrottssignaler övervakas.", + "vehicle.virtualKeyMessage": "Kom tillbaka efter att du bekräftat i Tesla och uppdatera sedan fordonen.", + "vehicle.actionRefused": "Åtgärden nekades av API:et.", + "vehicle.sentryActivated": "Sentry-varning aktiverad.", + "vehicle.sentryActivationFailed": "Det går inte att aktivera Sentry-varning.", + "vehicle.reason.missingKey": "Den virtuella nyckeln har inte lagts till på fordonet.", + "vehicle.reason.unsupportedHardware": "Hårdvaran stöds inte för övervakning.", + "vehicle.reason.unsupportedFirmware": "Den fasta programvaran stöds inte för övervakning.", + "vehicle.reason.maxConfigs": "Det maximala antalet övervakningskonfigurationer har redan uppnåtts.", + "vehicle.reason.unknown": "Fordonet hoppades över av okänd anledning.", + "vehicle.reason.withDetails": "Fordon hoppades över: {{details}}", + "consentGate.kicker": "Samtycke", + "consentGate.title": "Uppdaterade villkor", + "consentGate.subtitle": "Samtyckesvillkoren har ändrats. Godkänn den nya versionen för att fortsätta använda SentryGuard.", + "onboarding.kicker": "Konfiguration", + "onboarding.loadingSubtitle": "Läser in konfigurationsflödet...", + "onboarding.loadingTitle": "Konfiguration", + "onboarding.doneTitle": "Konfigurationen är klar", + "onboarding.doneSubtitle": "SentryGuard är redo för det här kontot.", + "onboarding.continue": "Fortsätt", + "onboarding.consentTitle": "Samtycke", + "onboarding.consentSubtitle": "Godkänn den databehandling som krävs för SentryGuard-varningar.", + "onboarding.accepting": "Validerar...", + "onboarding.accept": "Godkänn och fortsätt", + "onboarding.consentUnavailable": "Samtycke är inte tillgängligt.", + "onboarding.vehiclesTitle": "Fordon", + "onboarding.vehiclesSubtitle": "Inget Tesla-fordon har ännu upptäckts för det här kontot.", + "onboarding.refresh": "Uppdatera", + "onboarding.vehiclesStep1": "Se till att Tesla-kontot har ett fordon.", + "onboarding.vehiclesStep2": "Se till att Tesla-behörigheterna har godkänts.", + "onboarding.vehiclesStep3": "Uppdatera det här steget efter några sekunder.", + "onboarding.virtualKeyTitle": "Virtuell nyckel", + "onboarding.virtualKeySubtitle": "Lägg till den virtuella nyckeln i Tesla-appen.", + "onboarding.virtualKeyAdded": "Jag har lagt till nyckeln", + "onboarding.virtualKeyStep1": "Öppna Tesla från den här knappen.", + "onboarding.virtualKeyStep2": "Godkänn begäran om virtuell nyckel.", + "onboarding.virtualKeyStep3": "Återgå till SentryGuard.", + "onboarding.virtualKeyStep4": "Kontrollera att nyckeln är parkopplad.", + "onboarding.sentrySubtitle": "Aktivera huvudövervakningen på minst ett fordon.", + "onboarding.activating": "Aktiverar...", + "onboarding.activateVehicle": "Aktivera {{vehicle}}", + "onboarding.breakInTitle": "Inbrottsdetektering", + "onboarding.breakInSubtitle": "Få eventuellt en varning vid inbrottsförsök.", + "onboarding.breakInActivate": "Aktivera inbrottsdetektering", + "onboarding.offensiveTitle": "Offensiv respons", + "onboarding.offensiveSubtitle": "Välj hur ditt fordon reagerar när ett inbrottsförsök upptäcks.", + "onboarding.readyTitle": "Allt är klart", + "onboarding.readySubtitle": "Konfigurationsflödet är slutfört.", + "onboarding.finalizing": "Slutför...", + "onboarding.finish": "Slutför", + "onboarding.skip": "Hoppa över för nu", + "onboarding.skipSetup": "Hoppa över konfigurationen för nu", + "onboarding.resumeTitle": "Slutför konfigurationen", + "onboarding.vehicleEnabled": "{{vehicle}}: aktiverat", + "onboarding.vehicleDisabled": "{{vehicle}}: inaktivt", + "onboarding.vehicleKeyMissing": "{{vehicle}}: virtuell nyckel krävs", + "onboarding.virtualKeyMissingUrl": "URL:en för den virtuella nyckeln är inte konfigurerad för det här API:et.", + "onboarding.virtualKeyReturn": "Kom tillbaka efter att du bekräftat i Tesla och kontrollera sedan nyckeln.", + "settings.legalSection": "Juridik", + "settings.privacyPolicy": "Integritetspolicy", + "settings.terms": "Användarvillkor", + "settings.deleteAccount": "Radera mitt konto", + "settings.deleteAccountTitle": "Radera konto", + "settings.deleteAccountConfirm": "Detta raderar permanent ditt konto och alla tillhörande data. Åtgärden kan inte ångras.", + "settings.deleteAccountCta": "Radera", + "settings.deleteAccountCountdown": "Radera ({{seconds}}s)", + "settings.deleteAccountCooldownHint": "Raderingsknappen låses upp efter några sekunder så att du hinner läsa den här varningen.", + "common.or": "eller", + "telegram.title": "Telegram-konfiguration", + "telegram.linked": "Ansluten", + "telegram.notLinked": "Väntar", + "telegram.connected": "Ditt Telegram-konto är anslutet. Du får dina varningar här.", + "telegram.disconnected": "Länka ditt Telegram-konto för att ta emot fordonsvarningar.", + "telegram.generateLink": "Generera Telegram-länk", + "telegram.generating": "Genererar...", + "telegram.waiting": "Väntar på att du ska klicka på länken och starta boten...", + "telegram.linkExpires": "Den här länken upphör att gälla om {{minutes}} minuter", + "telegram.openBot": "Öppna Telegram", + "telegram.success": "Ditt Telegram-konto har länkats!", + "telegram.linkedOn": "Länkad", + "telegram.sendTest": "Skicka test", + "telegram.sendingTest": "Skickar...", + "telegram.unlink": "Avlänka konto", + "telegram.unlinking": "Avlänkar...", + "telegram.copy": "Kopiera länk", + "telegram.unlinkConfirm": "Är du säker på att du vill avlänka ditt Telegram-konto?", + "telegram.testSent": "Testmeddelande skickat! Kontrollera ditt Telegram.", + "onboarding.notificationsTitle": "Varningar och aviseringar", + "onboarding.notificationsSubtitle": "Aktivera pushaviseringar för att ta emot varningar i realtid på den här telefonen. Du kan även konfigurera Telegram senare i inställningarna.", + "onboarding.notificationsTelegram": "Telegram", + "onboarding.notificationsPush": "Pushaviseringar", + "onboarding.notificationsPushDescription": "Gör att du kan ta emot omedelbara varningar på den här telefonen vid misstänkt aktivitet eller inbrottsförsök.", + "onboarding.notificationsConfigured": "Aviseringskonfigurationen har verifierats!", + "onboarding.notificationsNotConfigured": "Du måste aktivera pushaviseringar för att fortsätta.", + "onboarding.notificationsActivatePush": "Aktivera", + "onboarding.notificationsPushActive": "Pushaviseringar aktiverade på den här enheten" +} diff --git a/apps/mobile/src/screens/SettingsScreen.tsx b/apps/mobile/src/screens/SettingsScreen.tsx index 670dc39d..7003b8a1 100644 --- a/apps/mobile/src/screens/SettingsScreen.tsx +++ b/apps/mobile/src/screens/SettingsScreen.tsx @@ -1,6 +1,6 @@ import { useNavigation } from '@react-navigation/native'; import type { NativeStackNavigationProp } from '@react-navigation/native-stack'; -import type { JSX } from 'react'; +import { useMemo, type JSX } from 'react'; import { useTranslation } from 'react-i18next'; import { Modal, ScrollView, StyleSheet, View } from 'react-native'; @@ -9,7 +9,7 @@ import { TextVariant } from '../core/design/typography'; import { useScreenTopInset } from '../core/design/use-screen-inset'; import { MainStackParamList } from '../core/navigation'; import { ThemeMode, useTheme } from '../core/theme'; -import { AppSwitch, AppText, GlassButton, GlassButtonVariant, ListRow, ListSection, SegmentedControl, Surface } from '../core/ui'; +import { AppSwitch, AppText, GlassButton, GlassButtonVariant, Icon, ListRow, ListSection, SegmentedControl, Surface } from '../core/ui'; import { UserLanguage } from '../features/user/domain/entities'; import { resolveTelegramStatusKey } from './telegram-settings/telegram-settings.helpers'; import { @@ -32,12 +32,25 @@ interface SettingsScreenProps { onLogout(): Promise; } +const LANGUAGE_OPTIONS: { label: string; value: UserLanguage }[] = [ + { label: 'English', value: UserLanguage.English }, + { label: 'Français', value: UserLanguage.French }, + { label: 'Deutsch', value: UserLanguage.German }, + { label: 'Nederlands', value: UserLanguage.Dutch }, + { label: 'Norsk', value: UserLanguage.Norwegian }, + { label: 'Español', value: UserLanguage.Spanish }, + { label: 'Italiano', value: UserLanguage.Italian }, + { label: 'Svenska', value: UserLanguage.Swedish }, + { label: 'Dansk', value: UserLanguage.Danish }, +]; + export function SettingsScreen({ onLogout }: SettingsScreenProps): JSX.Element { const { t, i18n } = useTranslation(); const { colors, mode, setMode } = useTheme(); const topInset = useScreenTopInset(); const { isDndAccessModalOpen, + isLanguageModalOpen, isTelegramLinked, languageMutation, languageQuery, @@ -47,11 +60,16 @@ export function SettingsScreen({ onLogout }: SettingsScreenProps): JSX.Element { preferencesQuery, profile, setIsDndAccessModalOpen, + setIsLanguageModalOpen, updatePreference, } = useSettings(); const isBusy = preferencesMutation.isPending; const language = languageQuery.data?.language ?? UserLanguage.French; + const currentLanguageOption = useMemo( + () => LANGUAGE_OPTIONS.find((option) => option.value === language) ?? LANGUAGE_OPTIONS[0], + [language] + ); const crispWebsiteId = resolveCrispWebsiteId(); const discordUrl = resolveDiscordUrl(); const supportEmail = resolveSupportEmail(); @@ -102,19 +120,13 @@ export function SettingsScreen({ onLogout }: SettingsScreenProps): JSX.Element { /> - - - {t('settings.language')} - - languageMutation.mutate(next)} - options={[ - { label: 'Français', value: UserLanguage.French }, - { label: 'English', value: UserLanguage.English }, - ]} + + setIsLanguageModalOpen(true)} /> - + + setIsLanguageModalOpen(false)} transparent visible={isLanguageModalOpen}> + + + {t('settings.language')} + {LANGUAGE_OPTIONS.map((option) => ( + { + languageMutation.mutate(option.value); + setIsLanguageModalOpen(false); + }} + accessory={ + option.value === language ? ( + + ) : null + } + /> + ))} + setIsLanguageModalOpen(false)} /> + + + + setIsDndAccessModalOpen(false)} transparent visible={isDndAccessModalOpen}> diff --git a/apps/mobile/src/screens/alerts/alerts.helpers.ts b/apps/mobile/src/screens/alerts/alerts.helpers.ts index daca2a31..7044142e 100644 --- a/apps/mobile/src/screens/alerts/alerts.helpers.ts +++ b/apps/mobile/src/screens/alerts/alerts.helpers.ts @@ -40,8 +40,20 @@ export function resolveAlertIcon(alert: AlertEvent): 'exclamationmark.triangle.f return alert.severity === AlertEventSeverity.Critical ? 'exclamationmark.triangle.fill' : 'bell.badge.fill'; } +const alertDateLocales: Record = { + en: 'en-US', + fr: 'fr-FR', + de: 'de-DE', + nl: 'nl-NL', + no: 'nb-NO', + es: 'es-ES', + it: 'it-IT', + sv: 'sv-SE', + da: 'da-DK', +}; + export function formatAlertDate(value: string, language: string): string { - return new Intl.DateTimeFormat(language === 'en' ? 'en-US' : 'fr-FR', { + return new Intl.DateTimeFormat(alertDateLocales[language] ?? 'en-US', { day: '2-digit', hour: '2-digit', minute: '2-digit', diff --git a/apps/mobile/src/screens/onboarding/use-onboarding.ts b/apps/mobile/src/screens/onboarding/use-onboarding.ts index 76607a0b..83863165 100644 --- a/apps/mobile/src/screens/onboarding/use-onboarding.ts +++ b/apps/mobile/src/screens/onboarding/use-onboarding.ts @@ -4,7 +4,7 @@ import { useTranslation } from 'react-i18next'; import { usePushToken } from '../../core/hooks/usePushToken'; import { useTelegramStatusSync } from '../../core/hooks/useTelegramStatusSync'; -import { resolveDeviceLanguage } from '../../core/i18n'; +import { resolveDeviceLanguage, SupportedLanguage } from '../../core/i18n'; import { acceptConsentUseCase, getConsentStatusUseCase, getConsentTextUseCase } from '../../features/consent/di'; import { completeOnboardingUseCase, getOnboardingStatusUseCase, skipOnboardingUseCase } from '../../features/onboarding/di'; import { getNotificationPreferencesUseCase, updateNotificationPreferencesUseCase, pushNotificationService } from '../../features/notifications/di'; @@ -23,6 +23,18 @@ import { selectTelemetryVehicle } from './onboarding.helpers'; import { registerDeviceForPush } from '../settings/settings.helpers'; import { requestVehicleCommandsScope } from '../vehicle-detail/vehicle-detail.helpers'; +const deviceLanguageToUserLanguage: Record = { + en: UserLanguage.English, + fr: UserLanguage.French, + de: UserLanguage.German, + nl: UserLanguage.Dutch, + no: UserLanguage.Norwegian, + es: UserLanguage.Spanish, + it: UserLanguage.Italian, + sv: UserLanguage.Swedish, + da: UserLanguage.Danish, +}; + export function useOnboarding(onComplete: () => void) { const { t } = useTranslation(); const queryClient = useQueryClient(); @@ -30,7 +42,7 @@ export function useOnboarding(onComplete: () => void) { const { pushToken, setPushToken } = usePushToken(); useTelegramStatusSync(); - const deviceLanguage = resolveDeviceLanguage() === 'fr' ? UserLanguage.French : UserLanguage.English; + const deviceLanguage = deviceLanguageToUserLanguage[resolveDeviceLanguage()]; useEffect(() => { updateUserLanguageUseCase diff --git a/apps/mobile/src/screens/settings/use-settings.ts b/apps/mobile/src/screens/settings/use-settings.ts index a3b8a90b..80b6bbdb 100644 --- a/apps/mobile/src/screens/settings/use-settings.ts +++ b/apps/mobile/src/screens/settings/use-settings.ts @@ -31,6 +31,7 @@ export function useSettings() { const { i18n, t } = useTranslation(); const [preferenceMessage, setPreferenceMessage] = useState(null); const [isDndAccessModalOpen, setIsDndAccessModalOpen] = useState(false); + const [isLanguageModalOpen, setIsLanguageModalOpen] = useState(false); const { isTokenResolved, pushToken, setPushToken } = usePushToken(); useTelegramStatusSync(); const hasRegisteredPushToken = useRef(false); @@ -162,6 +163,7 @@ export function useSettings() { return { isDndAccessModalOpen, + isLanguageModalOpen, isTelegramLinked: telegramStatusQuery.data?.linked === true, languageMutation, languageQuery, @@ -171,6 +173,7 @@ export function useSettings() { preferencesQuery, profile: profileQuery.data?.profile, setIsDndAccessModalOpen, + setIsLanguageModalOpen, updatePreference, }; } diff --git a/apps/webapp/next-i18next.config.js b/apps/webapp/next-i18next.config.js index f42b39e4..b56b3441 100644 --- a/apps/webapp/next-i18next.config.js +++ b/apps/webapp/next-i18next.config.js @@ -3,7 +3,7 @@ const path = require('path'); module.exports = { i18n: { defaultLocale: 'en', - locales: ['en', 'fr'], + locales: ['en', 'fr', 'de', 'nl', 'no', 'es', 'it', 'sv', 'da'], }, localePath: path.resolve('./src/locales'), }; diff --git a/apps/webapp/src/app/[locale]/faq/page.tsx b/apps/webapp/src/app/[locale]/faq/page.tsx index 27b5a897..1459e4ac 100644 --- a/apps/webapp/src/app/[locale]/faq/page.tsx +++ b/apps/webapp/src/app/[locale]/faq/page.tsx @@ -4,7 +4,7 @@ import { renderRichTranslation, stripRichTextTags, } from '@/core/i18n/server-i18n'; -import { SUPPORTED_LOCALES } from '@/core/i18n/i18n-config'; +import { DEFAULT_LOCALE, SUPPORTED_LOCALES } from '@/core/i18n/i18n-config'; import { faqCategories } from '@/core/faq/faq-data'; import PublicLayout from '@/components/PublicLayout'; import { ContactSection } from '@/components/faq/ContactSection'; @@ -43,9 +43,8 @@ export async function generateMetadata({ alternates: { canonical: `/${locale}/faq`, languages: { - 'en': '/en/faq', - 'fr': '/fr/faq', - 'x-default': '/en/faq', + ...Object.fromEntries(SUPPORTED_LOCALES.map((alt) => [alt, `/${alt}/faq`])), + 'x-default': `/${DEFAULT_LOCALE}/faq`, }, }, }; diff --git a/apps/webapp/src/app/[locale]/page.tsx b/apps/webapp/src/app/[locale]/page.tsx index aab1a001..e7c26ae7 100644 --- a/apps/webapp/src/app/[locale]/page.tsx +++ b/apps/webapp/src/app/[locale]/page.tsx @@ -1,6 +1,6 @@ import type { Metadata } from 'next'; import { getTranslation } from '@/core/i18n/server-i18n'; -import { SUPPORTED_LOCALES } from '@/core/i18n/i18n-config'; +import { DEFAULT_LOCALE, SUPPORTED_LOCALES } from '@/core/i18n/i18n-config'; import { SITE_URL } from '@/core/site'; import PublicLayout from '@/components/PublicLayout'; import AuthRedirect from '@/components/AuthRedirect'; @@ -49,9 +49,8 @@ export async function generateMetadata({ alternates: { canonical: `/${locale}`, languages: { - 'en': '/en', - 'fr': '/fr', - 'x-default': '/en', + ...Object.fromEntries(SUPPORTED_LOCALES.map((alt) => [alt, `/${alt}`])), + 'x-default': `/${DEFAULT_LOCALE}`, }, }, }; diff --git a/apps/webapp/src/components/I18nProvider.tsx b/apps/webapp/src/components/I18nProvider.tsx index 2aae1773..26387e60 100644 --- a/apps/webapp/src/components/I18nProvider.tsx +++ b/apps/webapp/src/components/I18nProvider.tsx @@ -10,6 +10,13 @@ import { DEFAULT_LOCALE, setLocaleCookie } from '../core/i18n/i18n-config'; const localeLoaders: Record Promise>> = { en: () => import('../locales/en/common.json').then((m) => m.default), fr: () => import('../locales/fr/common.json').then((m) => m.default), + de: () => import('../locales/de/common.json').then((m) => m.default), + nl: () => import('../locales/nl/common.json').then((m) => m.default), + no: () => import('../locales/no/common.json').then((m) => m.default), + es: () => import('../locales/es/common.json').then((m) => m.default), + it: () => import('../locales/it/common.json').then((m) => m.default), + sv: () => import('../locales/sv/common.json').then((m) => m.default), + da: () => import('../locales/da/common.json').then((m) => m.default), }; export const i18n: I18n = createInstance(); diff --git a/apps/webapp/src/components/LanguageSwitcher.tsx b/apps/webapp/src/components/LanguageSwitcher.tsx index 5fba4134..9e9ab5d8 100644 --- a/apps/webapp/src/components/LanguageSwitcher.tsx +++ b/apps/webapp/src/components/LanguageSwitcher.tsx @@ -5,7 +5,7 @@ import { useRouter, usePathname } from 'next/navigation'; import { i18n, addLocaleIfNeeded } from './I18nProvider'; import { hasToken } from '../core/api/token-manager'; import { useUserQuery } from '../features/user/di'; -import { DEFAULT_LOCALE, SUPPORTED_LOCALES, setLocaleCookie } from '../core/i18n/i18n-config'; +import { DEFAULT_LOCALE, SUPPORTED_LOCALES, SupportedLocale, setLocaleCookie } from '../core/i18n/i18n-config'; const FLAGS = { en: ( @@ -23,12 +23,69 @@ const FLAGS = { + ), + de: ( + + + + + + ), + nl: ( + + + + + + ), + no: ( + + + + + + + + ), + es: ( + + + + + ), + it: ( + + + + + + ), + sv: ( + + + + + + ), + da: ( + + + + + ) }; const LANGUAGES = [ { code: 'en', label: 'English', flag: FLAGS.en }, { code: 'fr', label: 'Français', flag: FLAGS.fr }, + { code: 'de', label: 'Deutsch', flag: FLAGS.de }, + { code: 'nl', label: 'Nederlands', flag: FLAGS.nl }, + { code: 'no', label: 'Norsk', flag: FLAGS.no }, + { code: 'es', label: 'Español', flag: FLAGS.es }, + { code: 'it', label: 'Italiano', flag: FLAGS.it }, + { code: 'sv', label: 'Svenska', flag: FLAGS.sv }, + { code: 'da', label: 'Dansk', flag: FLAGS.da }, ]; export default function LanguageSwitcher({ @@ -77,7 +134,7 @@ export default function LanguageSwitcher({ if (hasToken()) { try { - await updateLanguageMutation.mutateAsync(lng as 'en' | 'fr'); + await updateLanguageMutation.mutateAsync(lng as SupportedLocale); } catch (error) { console.warn('Failed to update language on server:', error); } diff --git a/apps/webapp/src/core/i18n/i18n-config.test.ts b/apps/webapp/src/core/i18n/i18n-config.test.ts new file mode 100644 index 00000000..b0f32792 --- /dev/null +++ b/apps/webapp/src/core/i18n/i18n-config.test.ts @@ -0,0 +1,36 @@ +import { DEFAULT_LOCALE, SUPPORTED_LOCALES, detectSupportedLocale } from './i18n-config'; + +describe('The i18n configuration', () => { + describe('When listing supported locales', () => { + it('should expose 9 locales including English as default', () => { + expect(SUPPORTED_LOCALES).toHaveLength(9); + expect(SUPPORTED_LOCALES[0]).toBe(DEFAULT_LOCALE); + }); + }); + + describe('The detectSupportedLocale() function', () => { + describe('When the header contains a supported locale tag', () => { + it('should return the primary language subtag', () => { + expect(detectSupportedLocale('fr-FR,fr;q=0.9,en;q=0.8')).toBe('fr'); + expect(detectSupportedLocale('de-DE')).toBe('de'); + expect(detectSupportedLocale('sv-SE')).toBe('sv'); + }); + }); + + describe('When the header contains Norwegian Bokmål or Nynorsk tags', () => { + it('should map them to the "no" locale', () => { + expect(detectSupportedLocale('nb-NO')).toBe('no'); + expect(detectSupportedLocale('nb')).toBe('no'); + expect(detectSupportedLocale('nn-NO')).toBe('no'); + expect(detectSupportedLocale('nb-NO,nb;q=0.9,en-US;q=0.8,en;q=0.7')).toBe('no'); + }); + }); + + describe('When the header contains no supported locale', () => { + it('should return undefined', () => { + expect(detectSupportedLocale('ja-JP,ja;q=0.9')).toBeUndefined(); + expect(detectSupportedLocale('')).toBeUndefined(); + }); + }); + }); +}); diff --git a/apps/webapp/src/core/i18n/i18n-config.ts b/apps/webapp/src/core/i18n/i18n-config.ts index d42b48a7..71f190b2 100644 --- a/apps/webapp/src/core/i18n/i18n-config.ts +++ b/apps/webapp/src/core/i18n/i18n-config.ts @@ -1,6 +1,32 @@ -export const SUPPORTED_LOCALES = ['en', 'fr'] as const; +export const SUPPORTED_LOCALES = ['en', 'fr', 'de', 'nl', 'no', 'es', 'it', 'sv', 'da'] as const; export const DEFAULT_LOCALE = 'en'; +export type SupportedLocale = (typeof SUPPORTED_LOCALES)[number]; + +const LOCALE_ALIASES: Record = { + nb: 'no', + nn: 'no', +}; + +export function detectSupportedLocale(acceptLanguage: string): SupportedLocale | undefined { + const requestedCodes = acceptLanguage + .toLowerCase() + .split(',') + .map((part) => part.split(';')[0].trim().split('-')[0]) + .filter((code) => code.length > 0); + + for (const requestedCode of requestedCodes) { + const normalized = LOCALE_ALIASES[requestedCode] ?? requestedCode; + const match = SUPPORTED_LOCALES.find((locale) => locale === normalized); + + if (match) { + return match; + } + } + + return undefined; +} + export function setLocaleCookie(locale: string) { document.cookie = `locale=${locale};path=/;max-age=${365 * 24 * 60 * 60};SameSite=Lax`; } diff --git a/apps/webapp/src/core/i18n/server-i18n.tsx b/apps/webapp/src/core/i18n/server-i18n.tsx index efd1ca75..55da41a6 100644 --- a/apps/webapp/src/core/i18n/server-i18n.tsx +++ b/apps/webapp/src/core/i18n/server-i18n.tsx @@ -3,9 +3,26 @@ import { ReactNode } from 'react'; import en from '../../locales/en/common.json'; import fr from '../../locales/fr/common.json'; -import { DEFAULT_LOCALE } from './i18n-config'; - -const translations: Record> = { en, fr }; +import de from '../../locales/de/common.json'; +import nl from '../../locales/nl/common.json'; +import no from '../../locales/no/common.json'; +import es from '../../locales/es/common.json'; +import it from '../../locales/it/common.json'; +import sv from '../../locales/sv/common.json'; +import da from '../../locales/da/common.json'; +import { DEFAULT_LOCALE, detectSupportedLocale } from './i18n-config'; + +const translations: Record> = { + en, + fr, + de, + nl, + no, + es, + it, + sv, + da, +}; export async function getLocale(): Promise { const cookieStore = await cookies(); @@ -18,13 +35,21 @@ export async function getLocale(): Promise { const headerStore = await headers(); const acceptLanguage = headerStore.get('accept-language') || ''; - if (acceptLanguage.toLowerCase().startsWith('fr')) { - return 'fr'; + const detectedLocale = detectLocaleFromAcceptLanguage(acceptLanguage); + + if (detectedLocale) { + return detectedLocale; } return DEFAULT_LOCALE; } +function detectLocaleFromAcceptLanguage( + acceptLanguage: string +): string | undefined { + return detectSupportedLocale(acceptLanguage); +} + export function getTranslation(locale: string) { const dict = translations[locale] || translations[DEFAULT_LOCALE]; diff --git a/apps/webapp/src/core/security/csp.test.ts b/apps/webapp/src/core/security/csp.test.ts index bda4ac67..d118ac90 100644 --- a/apps/webapp/src/core/security/csp.test.ts +++ b/apps/webapp/src/core/security/csp.test.ts @@ -1,3 +1,4 @@ +import { SUPPORTED_LOCALES } from '../i18n/i18n-config'; import { buildCspHeader, isLocaleRoute } from './csp'; describe('The buildCspHeader() function', () => { @@ -39,6 +40,27 @@ describe('The isLocaleRoute() function', () => { }); }); + describe('When the path is a newly added locale route', () => { + it('should return true for the locale root', () => { + expect(isLocaleRoute('/de')).toBe(true); + }); + + it('should return true for the locale faq page', () => { + expect(isLocaleRoute('/da/faq')).toBe(true); + }); + }); + + describe('When the path is every supported locale route', () => { + it('should return true for each of them', () => { + const localeRoutes = SUPPORTED_LOCALES.flatMap((locale) => [ + `/${locale}`, + `/${locale}/faq`, + ]); + + expect(localeRoutes.every(isLocaleRoute)).toBe(true); + }); + }); + describe('When the path is an authenticated app route', () => { it('should return false', () => { expect(isLocaleRoute('/dashboard')).toBe(false); diff --git a/apps/webapp/src/core/security/csp.ts b/apps/webapp/src/core/security/csp.ts index 78aaa39d..cb96bd7e 100644 --- a/apps/webapp/src/core/security/csp.ts +++ b/apps/webapp/src/core/security/csp.ts @@ -1,4 +1,11 @@ -export const LOCALE_ROUTES = ['/', '/faq', '/en', '/fr', '/en/faq', '/fr/faq']; +import { SUPPORTED_LOCALES } from '../i18n/i18n-config'; + +export const LOCALE_ROUTES = [ + '/', + '/faq', + ...SUPPORTED_LOCALES.map((locale) => `/${locale}`), + ...SUPPORTED_LOCALES.map((locale) => `/${locale}/faq`), +]; export function isLocaleRoute(pathname: string): boolean { return LOCALE_ROUTES.includes(pathname); diff --git a/apps/webapp/src/features/user/data/user.api-repository.ts b/apps/webapp/src/features/user/data/user.api-repository.ts index 6aa75552..52e3b88b 100644 --- a/apps/webapp/src/features/user/data/user.api-repository.ts +++ b/apps/webapp/src/features/user/data/user.api-repository.ts @@ -1,3 +1,4 @@ +import { SupportedLocale } from '../../../core/i18n/i18n-config'; import { UserRepositoryRequirements } from '../domain/user.repository.requirements'; import { UserLanguage, UpdateLanguageResponse } from '../domain/entities'; import { ApiClientRequirements } from '../../../core/api/api-client'; @@ -11,7 +12,7 @@ export class UserApiRepository implements UserRepositoryRequirements { }); } - async updateUserLanguage(language: 'en' | 'fr'): Promise { + async updateUserLanguage(language: SupportedLocale): Promise { return this.client.request('/user/language', { method: 'PATCH', body: JSON.stringify({ language }), diff --git a/apps/webapp/src/features/user/domain/use-cases/user.use-cases.requirements.ts b/apps/webapp/src/features/user/domain/use-cases/user.use-cases.requirements.ts index 49eebb15..ce151c31 100644 --- a/apps/webapp/src/features/user/domain/use-cases/user.use-cases.requirements.ts +++ b/apps/webapp/src/features/user/domain/use-cases/user.use-cases.requirements.ts @@ -1,3 +1,4 @@ +import { SupportedLocale } from '../../../../core/i18n/i18n-config'; import { UserLanguage, UpdateLanguageResponse } from '../entities'; export interface GetUserLanguageRequirements { @@ -5,5 +6,5 @@ export interface GetUserLanguageRequirements { } export interface UpdateUserLanguageRequirements { - execute(language: 'en' | 'fr'): Promise; + execute(language: SupportedLocale): Promise; } diff --git a/apps/webapp/src/features/user/domain/use-cases/user.use-cases.ts b/apps/webapp/src/features/user/domain/use-cases/user.use-cases.ts index 3f77ff33..032c4619 100644 --- a/apps/webapp/src/features/user/domain/use-cases/user.use-cases.ts +++ b/apps/webapp/src/features/user/domain/use-cases/user.use-cases.ts @@ -1,3 +1,4 @@ +import { SupportedLocale } from '../../../../core/i18n/i18n-config'; import { UserRepositoryRequirements } from '../user.repository.requirements'; import { UserLanguage, UpdateLanguageResponse } from '../entities'; import { @@ -16,7 +17,7 @@ export class GetUserLanguageUseCase implements GetUserLanguageRequirements { export class UpdateUserLanguageUseCase implements UpdateUserLanguageRequirements { constructor(private repository: UserRepositoryRequirements) {} - async execute(language: 'en' | 'fr'): Promise { + async execute(language: SupportedLocale): Promise { return this.repository.updateUserLanguage(language); } } diff --git a/apps/webapp/src/features/user/domain/user.repository.requirements.ts b/apps/webapp/src/features/user/domain/user.repository.requirements.ts index 8e87cdc1..7ea36787 100644 --- a/apps/webapp/src/features/user/domain/user.repository.requirements.ts +++ b/apps/webapp/src/features/user/domain/user.repository.requirements.ts @@ -1,6 +1,7 @@ +import { SupportedLocale } from '../../../core/i18n/i18n-config'; import { UserLanguage, UpdateLanguageResponse } from './entities'; export interface UserRepositoryRequirements { getUserLanguage(): Promise; - updateUserLanguage(language: 'en' | 'fr'): Promise; + updateUserLanguage(language: SupportedLocale): Promise; } diff --git a/apps/webapp/src/features/user/presentation/queries/use-user-query.ts b/apps/webapp/src/features/user/presentation/queries/use-user-query.ts index 2efab6be..fcf39aeb 100644 --- a/apps/webapp/src/features/user/presentation/queries/use-user-query.ts +++ b/apps/webapp/src/features/user/presentation/queries/use-user-query.ts @@ -1,4 +1,5 @@ import { useQuery, useMutation, useQueryClient } from '@tanstack/react-query'; +import { SupportedLocale } from '../../../../core/i18n/i18n-config'; import { UserLanguage } from '../../domain/entities'; import { GetUserLanguageRequirements, @@ -21,7 +22,7 @@ export const createUseUserQuery = (deps: UserQueryDependencies) => () => { }); const updateLanguageMutation = useMutation({ - mutationFn: async (language: 'en' | 'fr') => { + mutationFn: async (language: SupportedLocale) => { const result = await deps.updateUserLanguageUseCase.execute(language); if (!result.success) throw new Error('Failed to update language'); return result; diff --git a/apps/webapp/src/locale-proxy.ts b/apps/webapp/src/locale-proxy.ts index 2009260a..eac9e57b 100644 --- a/apps/webapp/src/locale-proxy.ts +++ b/apps/webapp/src/locale-proxy.ts @@ -1,5 +1,6 @@ import { NextRequest, NextResponse } from 'next/server'; -import { DEFAULT_LOCALE, SUPPORTED_LOCALES } from '@/core/i18n/i18n-config'; +import { DEFAULT_LOCALE, detectSupportedLocale, SUPPORTED_LOCALES } from '@/core/i18n/i18n-config'; +import { LOCALE_ROUTES } from '@/core/security/csp'; export function detectLocale(request: NextRequest): string { const localeCookie = request.cookies.get('locale')?.value; @@ -10,11 +11,7 @@ export function detectLocale(request: NextRequest): string { const acceptLanguage = request.headers.get('accept-language') || ''; - if (acceptLanguage.toLowerCase().startsWith('fr')) { - return 'fr'; - } - - return DEFAULT_LOCALE; + return detectSupportedLocale(acceptLanguage) ?? DEFAULT_LOCALE; } function extractLocaleFromPath(pathname: string): string | undefined { @@ -52,5 +49,5 @@ export function proxy(request: NextRequest) { } export const config = { - matcher: ['/', '/faq', '/en', '/fr', '/en/faq', '/fr/faq'], + matcher: LOCALE_ROUTES, }; diff --git a/apps/webapp/src/locales/da/common.json b/apps/webapp/src/locales/da/common.json new file mode 100644 index 00000000..d259db62 --- /dev/null +++ b/apps/webapp/src/locales/da/common.json @@ -0,0 +1,471 @@ +{ + "© {{year}} SentryGuard. All rights reserved.": "© {{year}} SentryGuard. Alle rettigheder forbeholdes.", + "← Back to home": "← Tilbage til forsiden", + "⏳ Waiting for you to click the link and start the bot...": "⏳ Venter på, at du klikker på linket og starter botten...", + "✅ Your Telegram account is successfully linked!": "✅ Din Telegram-konto er nu tilknyttet!", + "About Telemetry": "Om telemetri", + "Additional Permissions Required": "Yderligere tilladelser kræves", + "Are you sure you want to disable telemetry for this vehicle?": "Er du sikker på, at du vil deaktivere telemetri for dette køretøj?", + "Are you sure you want to unlink your Telegram account?": "Er du sikker på, at du vil fjerne tilknytningen til din Telegram-konto?", + "Authenticating...": "Godkender...", + "Authentication Failed": "Godkendelse mislykkedes", + "Authentication failed {{error}}": "Godkendelse mislykkedes: {{error}}", + "Authentication successful! Checking consent status...": "Godkendelse lykkedes! Kontrollerer samtykkestatus...", + "Authentication successful! Redirecting to consent form...": "Godkendelse lykkedes! Omdirigerer til samtykkeformularen...", + "Authentication successful! Redirecting to dashboard...": "Godkendelse lykkedes! Omdirigerer til dashboardet...", + "Battery-Efficient Monitoring": "Batterivenlig overvågning", + "Click \"Fix Permissions\" to re-authenticate with Tesla and grant the required permissions. You'll be redirected back here automatically.": "Klik på \"Ret tilladelser\" for at godkende igen hos Tesla og give de nødvendige tilladelser. Du bliver automatisk omdirigeret tilbage hertil.", + "Click \"Generate Telegram Link\" to create a unique connection link that expires in 15 minutes.": "Klik på \"Generér Telegram-link\" for at oprette et unikt forbindelseslink, der udløber om 15 minutter.", + "Click the link to open our Telegram bot. The bot will automatically send a /start command with your unique token.": "Klik på linket for at åbne vores Telegram-bot. Botten sender automatisk en /start-kommando med dit unikke token.", + "Configure →": "Konfigurér →", + "Configuring...": "Konfigurerer...", + "Confirm Connection": "Bekræft forbindelse", + "Connecting...": "Forbinder...", + "Copied!": "Kopieret!", + "Copy": "Kopiér", + "Dashboard": "Dashboard", + "Disable": "Deaktivér", + "Disable Telemetry": "Deaktivér telemetri", + "Disabled": "Deaktiveret", + "Disabling...": "Deaktiverer...", + "Enable": "Aktivér", + "Enable Telemetry": "Aktivér telemetri", + "Enabled": "Aktiveret", + "Enabling telemetry allows SentryGuard to monitor your vehicle's Sentry Mode status in real-time. When suspicious activity is detected, you'll receive instant alerts via Telegram.": "Når du aktiverer telemetri, kan SentryGuard overvåge dit køretøjs Sentry Mode-status i realtid uden at dræne dit batteri. Når mistænkelig aktivitet registreres, modtager du øjeblikkelige alarmer via Telegram.", + "End-to-end encrypted communication with Tesla's official API. Your data stays yours.": "End-to-end-krypteret kommunikation med Teslas officielle API. Dine data forbliver dine egne.", + "Failed to initiate login": "Kunne ikke starte login", + "Failed to configure telemetry": "Kunne ikke konfigurere telemetri", + "Failed to enable telemetry": "Kunne ikke aktivere telemetri", + "Failed to disable telemetry": "Kunne ikke deaktivere telemetri", + "Virtual key not added to the vehicle": "Virtuel nøgle ikke tilføjet til køretøjet", + "Unsupported hardware (pre-2018 Model S/X)": "Hardware understøttes ikke (Model S/X fra før 2018)", + "Unsupported firmware version for telemetry": "Firmwareversion understøttes ikke til telemetri", + "Maximum telemetry configurations already present": "Det maksimale antal telemetrikonfigurationer er allerede nået", + "Vehicle skipped for an unknown reason": "Køretøjet blev sprunget over af ukendt årsag", + "Vehicle skipped for an unknown reason: {{details}}": "Køretøjet blev sprunget over af ukendt årsag: {{details}}", + "Fix Permissions": "Ret tilladelser", + "Generate Link": "Generér link", + "Generate Telegram Link": "Generér Telegram-link", + "Generating...": "Genererer...", + "GitHub": "GitHub", + "How It Works": "Sådan fungerer det", + "If donations no longer cover expenses, the service may shut down, become paid (at actual cost, around $0.50/user), or be limited to current users. Your support keeps it free and open!": "Hvis donationerne ikke længere dækker udgifterne, kan tjenesten blive lukket, blive betalingsbaseret (til den faktiske pris, omkring 0,50 $/bruger) eller blive begrænset til nuværende brugere. Din støtte holder den gratis og åben!", + "Instant Alerts": "Øjeblikkelige alarmer", + "Instant Telegram notifications": "Øjeblikkelige Telegram-notifikationer", + "Link your Telegram account to receive instant vehicle alerts": "Tilknyt din Telegram-konto for at modtage øjeblikkelige køretøjsalarmer", + "Link your Telegram account to receive vehicle alerts.": "Tilknyt din Telegram-konto for at modtage køretøjsalarmer.", + "Linked": "Tilknyttet", + "Linked on": "Tilknyttet den", + "Loading...": "Indlæser...", + "Login Cancelled": "Login annulleret", + "Login with Tesla": "Log ind med Tesla", + "You cancelled the Tesla login. You can try again whenever you're ready.": "Du annullerede Tesla-login. Du kan prøve igen, når du er klar.", + "Logout": "Log ud", + "Manage": "Administrér", + "Manage Sentry Mode telemetry monitoring": "Administrér Sentry Mode-telemetriovervågning for dine Tesla-køretøjer", + "Manage Vehicles": "Administrér køretøjer", + "Model": "Model", + "Monitor and protect your Tesla vehicles": "Overvåg og beskyt dine Tesla-køretøjer", + "Monitor Sentry Mode via telemetry without battery drain": "Overvåg dit køretøjs Sentry Mode-status via telemetri uden at dræne dit batteri.", + "No vehicles": "Ingen køretøjer", + "No vehicles found": "Ingen køretøjer fundet", + "No vehicles found in your Tesla account. They will appear here automatically once detected.": "Der blev ikke fundet nogen køretøjer på din Tesla-konto. De vises automatisk her, når de registreres.", + "Not affiliated with Tesla, Inc. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Ikke tilknyttet Tesla, Inc. Tesla og Tesla-logoet er varemærker tilhørende Tesla, Inc.", + "Not linked": "Ikke tilknyttet", + "Offline access": "Offlineadgang", + "Open in Telegram": "Åbn i Telegram", + "Open Telegram": "Åbn Telegram", + "OpenID authentication": "OpenID-godkendelse", + "Pair Virtual Key": "Tilknyt virtuel nøgle", + "Permission Update Required": "Opdatering af tilladelser kræves", + "Privacy & Security": "Privatliv og sikkerhed", + "Processing authentication...": "Behandler godkendelse...", + "Protect Your Tesla": "Beskyt din Tesla", + "Quick Actions": "Hurtige handlinger", + "Re-authenticating...": "Godkender igen...", + "Real-time monitoring and instant alerts for your Tesla vehicle": "Overvågning i realtid og øjeblikkelige alarmer for dit Tesla-køretøj", + "Real-time Sentry Mode monitoring": "Overvågning af Sentry Mode i realtid", + "Receive Alerts": "Modtag alarmer", + "Receive real-time Telegram notifications when your vehicle's Sentry Mode is triggered.": "Modtag Telegram-notifikationer i realtid, når dit køretøjs Sentry Mode udløses.", + "Refresh": "Opdatér", + "Refresh Vehicles": "Opdatér køretøjer", + "Return to Home": "Tilbage til forsiden", + "Secure & Private": "Sikker og privat", + "Secure end-to-end encryption": "Sikker end-to-end-kryptering", + "Secure OAuth authentication powered by Tesla": "Sikker OAuth-godkendelse drevet af Tesla", + "Send Test Message": "Send testbesked", + "Sending...": "Sender...", + "SentryGuard": "SentryGuard", + "SentryGuard is a non-profit, open-source project built by the community for Tesla owners. It depends on donations to cover server and development costs.": "SentryGuard er et nonprofit-open source-projekt skabt af fællesskabet for Tesla-ejere. Det er afhængigt af donationer til at dække server- og udviklingsomkostninger.", + "SentryGuard is a non-profit, open-source project developed by the community for Tesla owners.": "SentryGuard er et nonprofit-open source-projekt udviklet af fællesskabet for Tesla-ejere.", + "SentryGuard needs additional permissions to work properly": "SentryGuard kræver yderligere tilladelser for at fungere korrekt", + "Setup": "Opsætning", + "Success!": "Succes!", + "Support SentryGuard": "Støt SentryGuard", + "Telegram": "Telegram", + "Telegram Alerts": "Telegram-alarmer", + "Telegram Configuration": "Telegram-konfiguration", + "Telemetry Enabled": "Telemetri aktiveret", + "Tesla Authorization Revoked": "Tesla-godkendelse tilbagekaldt", + "Tesla security policies required re-authorization": "Teslas sikkerhedspolitikker krævede fornyet godkendelse", + "Telemetry monitors Sentry Mode and sends alerts without draining battery": "SentryGuard bruger telemetri til at overvåge dit køretøjs Sentry Mode-status og sender øjeblikkelige Telegram-alarmer, når mistænkelig aktivitet registreres. Effektiv overvågning, der ikke dræner dit batteri.", + "Sentry Mode Monitoring": "Sentry Mode-overvågning", + "Test message sent! Check your Telegram.": "Testbesked sendt! Tjek din Telegram.", + "This link expires in {{minutes}} minutes": "Dette link udløber om {{minutes}} minutter", + "To continue using SentryGuard, please reconnect your Tesla account.": "For at fortsætte med at bruge SentryGuard skal du tilslutte din Tesla-konto igen.", + "Unlink": "Fjern tilknytning", + "Unlinking...": "Fjerner tilknytning...", + "User profile data": "Brugerprofildata", + "Vehicle telemetry data": "Køretøjets telemetridata", + "Vehicles": "Køretøjer", + "View all →": "Se alle →", + "VIN": "VIN", + "Virtual Key Not Paired": "Virtuel nøgle ikke tilknyttet", + "Virtual Key Paired": "Virtuel nøgle tilknyttet", + "Welcome back": "Velkommen tilbage", + "You need to pair your Tesla account with a virtual key to use SentryGuard.": "Du skal tilknytte din Tesla-konto med en virtuel nøgle for at bruge SentryGuard.", + "You're all set! You'll now receive instant Telegram notifications when your vehicle's Sentry Mode is triggered.": "Alt er klar! Du modtager nu øjeblikkelige Telegram-notifikationer, når dit køretøjs Sentry Mode udløses.", + "Your account will be linked instantly. Return to this page to see the confirmation and send a test message.": "Din konto tilknyttes med det samme. Vend tilbage til denne side for at se bekræftelsen og sende en testbesked.", + "Your Telegram account is connected. You will receive alerts here.": "Din Telegram-konto er tilsluttet. Du modtager alarmer her.", + "Your Telegram chat ID is securely stored and only used to send you vehicle alerts. You can unlink your account at any time, and all associated data will be removed.": "Dit Telegram-chat-id opbevares sikkert og bruges udelukkende til at sende dig køretøjsalarmer. Du kan til enhver tid fjerne tilknytningen til din konto, og alle tilknyttede data slettes.", + "Your Telegram Link": "Dit Telegram-link", + "Your Tesla account is successfully paired with a virtual key.": "Din Tesla-konto er nu tilknyttet en virtuel nøgle.", + "Your Tesla account needs additional permissions to use SentryGuard": "Din Tesla-konto kræver yderligere tilladelser for at bruge SentryGuard", + "Your Tesla account access has been removed. This typically happens when:": "Adgangen til din Tesla-konto er blevet fjernet. Dette sker typisk, når:", + "You removed SentryGuard from your Tesla account": "Du fjernede SentryGuard fra din Tesla-konto", + "You changed your Tesla account password": "Du ændrede adgangskoden til din Tesla-konto", + "Your session has expired. Please log in again.": "Din session er udløbet. Log venligst ind igen.", + "Your Vehicles": "Dine køretøjer", + "Your vehicles will appear here once they are synced from your Tesla account. Visit the Vehicles page to refresh.": "Dine køretøjer vises her, når de er synkroniseret fra din Tesla-konto. Besøg siden Køretøjer for at opdatere.", + "Something went wrong": "Noget gik galt", + "We encountered an unexpected error. Please try refreshing the page.": "Vi stødte på en uventet fejl. Prøv at opdatere siden.", + "Try Again": "Prøv igen", + "Reloading...": "Genindlæser...", + "If the problem persists, please contact support.": "Hvis problemet fortsætter, bedes du kontakte support.", + "Tesla Fleet API Consent": "Samtykke til Tesla Fleet API", + "Please read and accept the terms below to continue": "Læs og accepter venligst betingelserne nedenfor for at fortsætte", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Ved at underskrive eller acceptere denne formular giver du samtykke til, at SentryGuardOrg (\"Partner\") behandler dine Personoplysninger i forbindelse med Partnerens applikation med titlen SentryGuard (\"Appen\").", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "Partneren er den dataansvarlige, der er ansvarlig for behandlingen af dine Personoplysninger i forbindelse med Appen.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Ved at underskrive eller acceptere denne formular bekræfter du også at have modtaget Teslas privatlivsmeddelelse til kunder, der er tilgængelig på", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(\"Teslas privatlivsmeddelelse\") og giver samtykke til, at Tesla behandler Personoplysninger i overensstemmelse med Teslas privatlivsmeddelelse.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (e.g., event detection, Sentry Mode alerts).": "Appen giver dig adgang til avancerede overvågnings- og notifikationsfunktioner baseret på dit Tesla-køretøjs Sentry Mode, herunder identifikation og logning af sikkerhedshændelser (f.eks. hændelsesregistrering, Sentry Mode-alarmer).", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events) and metadata associated with Sentry Mode events (date/time, event type).": "For at levere disse funktioner skal Partneren behandle nogle af dine Personoplysninger, som kan omfatte:\n\n- profiloplysninger (kontoidentifikator, visningsnavn eller e-mailadresse, der er nødvendige for at knytte hændelser til din konto);\n\n- minimale køretøjsoplysninger, der er nødvendige for, at Appen kan fungere, herunder køretøjsidentifikator (VIN eller tilsvarende), Sentry Mode-status (aktivering, registrerede hændelser) og metadata tilknyttet Sentry Mode-hændelser (dato/klokkeslæt, hændelsestype).", + "Partner does not access or process other categories of data from your vehicle (e.g., remote commands, detailed driving data, battery or precise location information), beyond what is strictly necessary for the App to function as described above.": "Partneren tilgår eller behandler ikke andre kategorier af data fra dit køretøj (f.eks. fjernkommandoer, detaljerede køredata, batteri- eller præcise lokationsoplysninger) ud over, hvad der er strengt nødvendigt for, at Appen kan fungere som beskrevet ovenfor.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "Partneren bruger kun disse oplysninger til:\n\n(a) at levere overvågnings- og notifikationsfunktioner relateret til Sentry Mode til dig;\n\n(b) at knytte Sentry Mode-hændelser til din brugerkonto og dit køretøj;\n\n(c) at forbedre tjenestens pålidelighed og sikkerhed (f.eks. diagnosticering af tekniske hændelser);\n\n(d) at overholde gældende lovkrav, hvor det er relevant.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "Partneren opretholder administrative, tekniske og fysiske sikkerhedsforanstaltninger, der har til formål at beskytte Personoplysninger mod hændelig, ulovlig eller uautoriseret destruktion, tab, ændring, adgang, videregivelse eller anvendelse, herunder kryptering af data under overførsel og, hvor det er relevant, i hvile. Partneren opbevarer kun dine Personoplysninger, så længe det er nødvendigt for at levere Appen og de ovenfor beskrevne funktioner til dig, medmindre andet kræves eller tillades af gældende lovgivning, eller hvis du anmoder om tidlig sletning.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "Appen leveres \"som den er\" og \"som tilgængelig\", uden nogen form for garanti. SentryGuard og dets ophavsmænd fraskriver sig ethvert ansvar for direkte, indirekte, hændelige, særlige eller følgeskader, herunder, men ikke begrænset til, skader på køretøjet, tab af data eller serviceafbrydelser, der opstår som følge af brugen af eller manglende evne til at bruge Appen. Brugeren påtager sig det fulde og eneansvar for brugen af Appen og enhver konfigureret automatiseret handling (såsom at dytte med hornet).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "I henhold til gældende lovgivning (herunder GDPR) kan du have ret til at anmode om indsigt i og modtage oplysninger om dine Personoplysninger, opdatere og rette unøjagtigheder samt anmode om sletning, når de retlige betingelser er opfyldt. Du har også ret til at trække dit samtykke tilbage til enhver tid og uden omkostninger, hvilket dog kan begrænse eller forhindre brugen af Appen.\n\nFor at udøve dine rettigheder, trække dit samtykke tilbage eller få flere oplysninger om Appen og behandlingen af dine Personoplysninger kan du kontakte Partneren på: hello@sentryguard.org.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Jeg giver samtykke til indsamling, brug og behandling af mine Personoplysninger som beskrevet ovenfor.", + "I Accept": "Jeg accepterer", + "Processing...": "Behandler...", + "Consent accepted successfully!": "Samtykke accepteret!", + "Accepted at: {{date}}": "Accepteret den: {{date}}", + "Redirecting to dashboard...": "Omdirigerer til dashboardet...", + "By clicking \"I Accept\", you agree to the terms above and consent to the processing of your personal data.": "Ved at klikke på \"Jeg accepterer\" godkender du betingelserne ovenfor og giver samtykke til behandlingen af dine personoplysninger.", + "Revoke Consent": "Tilbagekald samtykke", + "Are you sure you want to revoke your consent? This will permanently delete your account and all associated data, including telemetry configurations.": "Er du sikker på, at du vil tilbagekalde dit samtykke? Dette sletter permanent din konto og alle tilknyttede data, herunder telemetrikonfigurationer.", + "Loading consent text...": "Indlæser samtykketekst...", + "Failed to load consent text": "Kunne ikke indlæse samtykketekst", + "Frequently Asked Questions": "Ofte stillede spørgsmål", + "Find answers to common questions about SentryGuard": "Find svar på almindelige spørgsmål om SentryGuard", + "General Questions": "Generelle spørgsmål", + "What is SentryGuard?": "Hvad er SentryGuard?", + "SentryGuard is a non-profit, open-source service that monitors your Tesla vehicle's Sentry Mode status in real-time and sends instant alerts via Telegram when suspicious activity is detected. It uses Tesla's official API and telemetry to provide efficient monitoring without draining your battery.": "SentryGuard er en nonprofit-open source-tjeneste, der overvåger dit Tesla-køretøjs Sentry Mode-status i realtid og sender øjeblikkelige alarmer via Telegram, når mistænkelig aktivitet registreres. Den bruger Teslas officielle API og telemetri til at levere effektiv overvågning uden at dræne dit batteri.", + "Is SentryGuard free?": "Er SentryGuard gratis?", + "Yes, SentryGuard is completely free to use. However, it depends on donations to cover server and development costs. If donations no longer cover expenses, the service may need to adapt, but we strive to keep it free and open-source for the community.": "Ja, SentryGuard er helt gratis at bruge. Tjenesten er dog afhængig af donationer til at dække server- og udviklingsomkostninger. Hvis donationerne ikke længere dækker udgifterne, kan tjenesten være nødt til at tilpasse sig, men vi bestræber os på at holde den gratis og open source for fællesskabet.", + "Is SentryGuard affiliated with Tesla?": "Er SentryGuard tilknyttet Tesla?", + "No, SentryGuard is not affiliated with Tesla, Inc. It is an independent, community-driven project. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Nej, SentryGuard er ikke tilknyttet Tesla, Inc. Det er et uafhængigt, fællesskabsdrevet projekt. Tesla og Tesla-logoet er varemærker tilhørende Tesla, Inc.", + "How does SentryGuard work?": "Hvordan fungerer SentryGuard?", + "SentryGuard uses Tesla's official Fleet API to monitor your vehicle's Sentry Mode status via telemetry. When Sentry Mode is triggered, you receive instant notifications through Telegram. The monitoring is battery-efficient as it uses telemetry data rather than constantly polling your vehicle.": "SentryGuard bruger Teslas officielle Fleet API til at overvåge dit køretøjs Sentry Mode-status via telemetri. Når Sentry Mode udløses, modtager du øjeblikkelige notifikationer via Telegram. Overvågningen er batterivenlig, fordi den bruger telemetridata i stedet for konstant at forespørge dit køretøj.", + "Setup & Configuration": "Opsætning og konfiguration", + "How do I get started with SentryGuard?": "Hvordan kommer jeg i gang med SentryGuard?", + "To get started, click \"Login with Tesla\" on the homepage. You'll be redirected to Tesla's official authentication page. After logging in and granting permissions, you'll need to accept the consent form, then configure Telegram alerts and enable telemetry for your vehicles.": "For at komme i gang skal du klikke på \"Log ind med Tesla\" på forsiden. Du bliver omdirigeret til Teslas officielle godkendelsesside. Når du har logget ind og givet tilladelser, skal du acceptere samtykkeformularen og derefter konfigurere Telegram-alarmer og aktivere telemetri for dine køretøjer.", + "What permissions does SentryGuard need?": "Hvilke tilladelser kræver SentryGuard?", + "SentryGuard requires access to your vehicle's telemetry data to monitor Sentry Mode status. It does not access location data, battery details, or remote commands beyond what is necessary for monitoring Sentry Mode events.": "SentryGuard kræver adgang til dit køretøjs telemetridata for at overvåge Sentry Mode-status. Den tilgår ikke lokationsdata, batterioplysninger eller fjernkommandoer ud over, hvad der er nødvendigt for at overvåge Sentry Mode-hændelser.", + "How do I link my Telegram account?": "Hvordan tilknytter jeg min Telegram-konto?", + "Go to the Telegram Configuration page in your dashboard, click \"Generate Telegram Link\", and open the link in Telegram. The bot will automatically link your account. The link expires in 15 minutes for security.": "Gå til siden Telegram-konfiguration i dit dashboard, klik på \"Generér Telegram-link\", og åbn linket i Telegram. Botten tilknytter automatisk din konto. Linket udløber af sikkerhedshensyn om 15 minutter.", + "What if I can't enable telemetry for my vehicle?": "Hvad gør jeg, hvis jeg ikke kan aktivere telemetri for mit køretøj?", + "Some vehicles may not support telemetry due to hardware limitations (pre-2018 Model S/X) or firmware versions. Make sure your vehicle has a virtual key paired and is running a supported firmware version. If issues persist, check the error message for specific details.": "Nogle køretøjer understøtter muligvis ikke telemetri på grund af hardwarebegrænsninger (Model S/X fra før 2018) eller firmwareversioner. Sørg for, at dit køretøj har en virtuel nøgle tilknyttet og kører en understøttet firmwareversion. Hvis problemerne fortsætter, kan du tjekke fejlmeddelelsen for specifikke detaljer.", + "Security & Privacy": "Sikkerhed og privatliv", + "Is my data secure?": "Er mine data sikre?", + "Yes, SentryGuard uses Tesla's official API with end-to-end encryption. Your data is stored securely and only used to provide monitoring and alert services. We only access the minimal data necessary for Sentry Mode monitoring.": "Ja, SentryGuard bruger Teslas officielle API med end-to-end-kryptering. Dine data opbevares sikkert og bruges udelukkende til at levere overvågnings- og alarmtjenester. Vi tilgår kun de minimale data, der er nødvendige for Sentry Mode-overvågning.", + "What data does SentryGuard collect?": "Hvilke data indsamler SentryGuard?", + "SentryGuard only collects: profile information (account identifier, display name or email), minimal vehicle information (VIN, Sentry Mode status, event metadata). We do not access location data, detailed driving data, battery information, or remote commands beyond what is necessary for Sentry Mode monitoring.": "SentryGuard indsamler kun: profiloplysninger (kontoidentifikator, visningsnavn eller e-mail), minimale køretøjsoplysninger (VIN, Sentry Mode-status, hændelsesmetadata). Vi tilgår ikke lokationsdata, detaljerede køredata, batterioplysninger eller fjernkommandoer ud over, hvad der er nødvendigt for Sentry Mode-overvågning.", + "Can I delete my data?": "Kan jeg slette mine data?", + "Yes, you can unlink your Telegram account and revoke your consent at any time. This will remove all associated data. You can also contact us at hello@sentryguard.org to request data deletion.": "Ja, du kan til enhver tid fjerne tilknytningen til din Telegram-konto og tilbagekalde dit samtykke. Dette fjerner alle tilknyttede data. Du kan også kontakte os på hello@sentryguard.org for at anmode om sletning af data.", + "Where is my data stored?": "Hvor opbevares mine data?", + "Your data is stored on secure servers with encryption in transit and at rest. We maintain administrative, technical, and physical safeguards to protect your personal data.": "Dine data opbevares på sikre servere med kryptering under overførsel og i hvile. Vi opretholder administrative, tekniske og fysiske sikkerhedsforanstaltninger for at beskytte dine personoplysninger.", + "Troubleshooting": "Fejlfinding", + "I'm not receiving Telegram alerts. What should I do?": "Jeg modtager ikke Telegram-alarmer. Hvad skal jeg gøre?", + "First, verify that your Telegram account is linked correctly. Send a test message from the Telegram Configuration page. Make sure telemetry is enabled for your vehicle and that Sentry Mode is active on your Tesla. Check that you haven't blocked the Telegram bot.": "Kontrollér først, at din Telegram-konto er tilknyttet korrekt. Send en testbesked fra siden Telegram-konfiguration. Sørg for, at telemetri er aktiveret for dit køretøj, og at Sentry Mode er aktiv på din Tesla. Tjek, at du ikke har blokeret Telegram-botten.", + "Why did my Tesla authorization get revoked?": "Hvorfor blev min Tesla-godkendelse tilbagekaldt?", + "Tesla authorization can be revoked if you remove SentryGuard from your Tesla account, change your Tesla password, or if Tesla security policies require re-authorization. Simply log in again to restore access.": "Tesla-godkendelse kan blive tilbagekaldt, hvis du fjerner SentryGuard fra din Tesla-konto, ændrer din Tesla-adgangskode, eller hvis Teslas sikkerhedspolitikker kræver fornyet godkendelse. Log blot ind igen for at genoprette adgangen.", + "SentryGuard shows \"Virtual Key Not Paired\". What does this mean?": "SentryGuard viser \"Virtuel nøgle ikke tilknyttet\". Hvad betyder det?", + "You need to pair a virtual key with your vehicle to use SentryGuard. This is done through the Tesla app. Go to Security & Drivers in your Tesla app and add SentryGuard as a key. Then return to SentryGuard and refresh your vehicles.": "Du skal tilknytte en virtuel nøgle med dit køretøj for at bruge SentryGuard. Dette gøres via Tesla-appen. Gå til Sikkerhed og førere i din Tesla-app, og tilføj SentryGuard som en nøgle. Vend derefter tilbage til SentryGuard, og opdater dine køretøjer.", + "Can I use SentryGuard with multiple vehicles?": "Kan jeg bruge SentryGuard med flere køretøjer?", + "Yes, SentryGuard supports multiple vehicles. Each vehicle can be configured independently. Go to the Vehicles page to manage telemetry for each vehicle.": "Ja, SentryGuard understøtter flere køretøjer. Hvert køretøj kan konfigureres uafhængigt. Gå til siden Køretøjer for at administrere telemetri for hvert køretøj.", + "Support & Donations": "Support og donationer", + "How can I support SentryGuard?": "Hvordan kan jeg støtte SentryGuard?", + "You can support SentryGuard by making a donation through the Buy Me a Coffee widget on the website. Your support helps cover server costs and keeps the service free for everyone. You can also contribute to the project on GitHub.": "Du kan støtte SentryGuard ved at give en donation via Buy Me a Coffee-widgetten på hjemmesiden. Din støtte hjælper med at dække serveromkostninger og holder tjenesten gratis for alle. Du kan også bidrage til projektet på GitHub.", + "How can I report a bug or request a feature?": "Hvordan rapporterer jeg en fejl eller anmoder om en funktion?", + "You can report bugs or request features by opening an issue on our GitHub repository at https://github.com/abarghoud/SentryGuard. We welcome community contributions!": "Du kan rapportere fejl eller anmode om funktioner ved at oprette en issue i vores GitHub-repository på https://github.com/abarghoud/SentryGuard. Vi byder bidrag fra fællesskabet velkommen!", + "Who can I contact for support?": "Hvem kan jeg kontakte for support?", + "For support, you can contact us at hello@sentryguard.org or open an issue on GitHub. We do our best to respond to all inquiries.": "For support kan du kontakte os på hello@sentryguard.org eller oprette en issue på GitHub. Vi gør vores bedste for at besvare alle henvendelser.", + "Still have questions?": "Har du stadig spørgsmål?", + "Can't find the answer you're looking for? Please feel free to contact us.": "Kan du ikke finde det svar, du leder efter? Du er velkommen til at kontakte os.", + "Contact Support": "Kontakt support", + "FAQ": "FAQ", + "Does Sentry Mode need to be activated to receive notifications?": "Skal Sentry Mode være aktiveret for at modtage notifikationer?", + "Why Telegram?": "Hvorfor Telegram?", + "Does SentryGuard impact the vehicle's battery or range?": "Påvirker SentryGuard køretøjets batteri eller rækkevidde?", + "What is SentryGuard description": "SentryGuard er en nonprofit-open source-tjeneste, der overvåger dit Tesla-køretøjs Sentry Mode-status i realtid og sender øjeblikkelige alarmer via Telegram, når mistænkelig aktivitet registreres. Den bruger Teslas officielle API og telemetri til at levere effektiv overvågning uden at dræne dit batteri.", + "SentryGuard requires active Sentry Mode": "Når det gælder registrering af ridser, buler og bevægelse i nærheden, så ja – Sentry Mode skal være aktiv. SentryGuard har dog også et indbrudsregistreringssystem, der fungerer, selv når Sentry Mode er helt deaktiveret.", + "Does SentryGuard protect my car when Sentry Mode is OFF?": "Beskytter SentryGuard min bil, når Sentry Mode er slået FRA?", + "Break-in detection explanation": "Ja! Selv hvis du slår Sentry Mode fra for at spare på batteriet, overvåger SentryGuard løbende dit køretøjs telemetri. Hvis nogen forsøger at trække i dit dørhåndtag, modtager du en øjeblikkelig Telegram-alarm.", + "Can SentryGuard turn on Sentry Mode automatically during a break-in?": "Kan SentryGuard aktivere Sentry Mode automatisk under et indbrudsforsøg?", + "Auto Sentry Mode explanation": "Ja! Når automatisk Sentry Mode er aktiveret i køretøjets indstillinger, aktiverer SentryGuard automatisk Sentry Mode, så snart et indbrudsforsøg registreres — så kameraerne begynder at optage, selv hvis Sentry Mode var slået fra. Dette kræver vehicle_cmds-autorisationen (den samme som bruges til hornet).", + "Why we chose Telegram": "Telegram tilbyder et kraftfuldt og sikkert bot-API, der gør det muligt for os at levere øjeblikkelige push-notifikationer i realtid. Det er utroligt hurtigt, pålideligt og helt gratis.", + "Is there a SentryGuard mobile app?": "Findes der en mobilapp til SentryGuard?", + "SentryGuard mobile app explanation": "Ja! SentryGuard findes som native mobilapp til både iOS og Android. Den sender øjeblikkelige push-notifikationer i det sekund, Sentry Mode udløses, og giver dig mulighed for at overvåge dine køretøjer og se din alarmhistorik direkte fra telefonen.", + "Do I need the mobile app to receive alerts?": "Har jeg brug for mobilappen for at modtage alarmer?", + "Mobile app vs Telegram alerts": "Nej. Hvis du allerede modtager alarmer via Telegram, fortsætter alt med at fungere præcis som før. Mobilappen tilføjer blot native push-notifikationer som ekstra kanal samt hurtig adgang til dit dashboard, når du er på farten.", + "How do I get the SentryGuard mobile app?": "Hvordan får jeg fat i SentryGuard-mobilappen?", + "How to get the mobile app": "Du kan downloade SentryGuard fra App Store på iOS eller Google Play på Android. Gå til <0>downloadsektionen på vores hjemmeside for at hente den til din enhed.", + "Is SentryGuard free description": "Ja, SentryGuard er helt gratis at bruge. Tjenesten er dog afhængig af donationer til at dække server- og udviklingsomkostninger. Hvis donationerne ikke længere dækker udgifterne, kan tjenesten være nødt til at tilpasse sig, men vi bestræber os på at holde den gratis og open source for fællesskabet.", + "Is SentryGuard affiliated with Tesla description": "Nej, SentryGuard er ikke tilknyttet Tesla, Inc. Det er et uafhængigt, fællesskabsdrevet projekt. Tesla og Tesla-logoet er varemærker tilhørende Tesla, Inc.", + "How does SentryGuard work description": "SentryGuard bruger Teslas officielle Fleet API til at overvåge dit køretøjs Sentry Mode-status via telemetri. Når Sentry Mode udløses, modtager du øjeblikkelige notifikationer via Telegram. Overvågningen er batterivenlig, fordi den bruger telemetridata i stedet for konstant at forespørge dit køretøj.", + "How to get started with SentryGuard": "For at komme i gang skal du klikke på \"Log ind med Tesla\" på forsiden. Du bliver omdirigeret til Teslas officielle godkendelsesside. Når du har logget ind og givet tilladelser, skal du acceptere samtykkeformularen. Derefter skal du på <0>siden Køretøjer tilknytte en virtuel nøgle med dit køretøj (dette omdirigerer dig til Teslas hjemmeside for at godkende via Tesla-appen), <1>konfigurere Telegram-alarmer og aktivere telemetri for dine køretøjer.", + "What permissions SentryGuard needs": "SentryGuard kræver adgang til dit køretøjs telemetridata for at overvåge Sentry Mode-status. Den tilgår ikke lokationsdata, batterioplysninger eller fjernkommandoer ud over, hvad der er nødvendigt for at overvåge Sentry Mode-hændelser.", + "How to link Telegram account": "Gå til <0>siden Telegram-konfiguration i dit dashboard, klik på \"Generér Telegram-link\", og åbn linket i Telegram. Botten tilknytter automatisk din konto. Linket udløber af sikkerhedshensyn om 15 minutter.", + "Cannot enable telemetry help": "Nogle køretøjer understøtter muligvis ikke telemetri på grund af hardwarebegrænsninger (Model S/X fra før 2018) eller firmwareversioner. Sørg for, at dit køretøj har en virtuel nøgle tilknyttet og kører en understøttet firmwareversion. Hvis problemerne fortsætter, kan du tjekke fejlmeddelelsen for specifikke detaljer.", + "Is my data secure answer": "Ja, SentryGuard bruger Teslas officielle API med end-to-end-kryptering. Dine data opbevares sikkert og bruges udelukkende til at levere overvågnings- og alarmtjenester. Vi tilgår kun de minimale data, der er nødvendige for Sentry Mode-overvågning.", + "What data SentryGuard collects": "SentryGuard indsamler kun: profiloplysninger (kontoidentifikator, visningsnavn eller e-mail), minimale køretøjsoplysninger (VIN, Sentry Mode-status, hændelsesmetadata). Vi tilgår ikke lokationsdata, detaljerede køredata, batterioplysninger eller fjernkommandoer ud over, hvad der er nødvendigt for Sentry Mode-overvågning.", + "Can I delete my data answer": "Ja, du kan til enhver tid fjerne tilknytningen til din Telegram-konto og tilbagekalde dit samtykke. Dette fjerner alle tilknyttede data. Funktionen til sletning af data er i øjeblikket under udvikling. Indtil videre bedes du kontakte os på <0>hello@sentryguard.org for at anmode om sletning af data.", + "Where is my data stored answer": "Dine data opbevares på sikre servere i Europa med kryptering under overførsel og i hvile. Vi opretholder administrative, tekniske og fysiske sikkerhedsforanstaltninger for at beskytte dine personoplysninger.", + "Not receiving alerts help": "Kontrollér først, at din Telegram-konto er tilknyttet korrekt. Send en testbesked fra <0>siden Telegram-konfiguration. Sørg for, at telemetri er aktiveret for dit køretøj, og at Sentry Mode er aktiv på din Tesla. Tjek også <1>køretøjskonfigurationen for at aktivere telemetri og opsætte den virtuelle nøgle. Tjek til sidst, at du ikke har blokeret Telegram-botten.", + "SentryGuard battery impact": "Nej, SentryGuard har ingen indvirkning på dit køretøjs batteri eller rækkevidde. Tjenesten bruger Teslas telemetrisystem, som er designet til at være ekstremt effektivt. I modsætning til tredjepartsapps, der måske forespørger dit køretøj konstant, modtager SentryGuard kun data, når der opstår hændelser, og bruger minimal båndbredde og ingen ekstra batteristrøm fra dit køretøj.", + "Tesla authorization revoked help": "Tesla-godkendelse kan blive tilbagekaldt, hvis du fjerner SentryGuard fra din Tesla-konto, ændrer din Tesla-adgangskode, eller hvis Teslas sikkerhedspolitikker kræver fornyet godkendelse. Log blot ind igen for at genoprette adgangen.", + "Virtual key not paired help": "Du skal tilknytte en virtuel nøgle med dit køretøj for at bruge SentryGuard. På <0>siden Køretøjer skal du klikke på knappen \"Tilknyt virtuel nøgle\", som omdirigerer dig til Teslas hjemmeside. Dette åbner din Tesla-app, hvor du kan godkende anmodningen om den virtuelle nøgle. Når den er godkendt, skal du vende tilbage til SentryGuard og opdatere dine køretøjer.", + "Multiple vehicles support": "Ja, SentryGuard understøtter flere køretøjer. Hvert køretøj kan konfigureres uafhængigt. Gå til siden Køretøjer for at administrere telemetri for hvert køretøj.", + "How to support SentryGuard": "Du kan støtte SentryGuard ved at give en donation via Buy Me a Coffee-widgetten på hjemmesiden eller direkte på <1>https://buymeacoffee.com/sentryguardorg. Din støtte hjælper med at dække serveromkostninger og holder tjenesten gratis for alle. Du kan også bidrage til projektet på <0>GitHub ved at give repositoryet en stjerne, rapportere problemer eller indsende pull requests.", + "How to report bugs or request features": "Du kan rapportere fejl eller anmode om funktioner ved at oprette en issue i vores <0>GitHub-repository eller ved at kontakte os via support-chatten på hjemmesiden. Vi byder bidrag fra fællesskabet velkommen!", + "Who to contact for support": "For support kan du kontakte os på <0>hello@sentryguard.org, oprette en issue på <1>GitHub eller bruge support-chatten på hjemmesiden. Vi gør vores bedste for at besvare alle henvendelser.", + "Does SentryGuard provide video footage?": "Leverer SentryGuard videooptagelser?", + "SentryGuard video access explanation": "SentryGuard har ikke adgang til videooptagelser fra dit køretøjs kameraer. Men når du modtager en Sentry Mode-alarm via Telegram, kan du klikke på knappen \"Tjek\" i beskeden for at åbne Tesla-appen direkte og se livestreamen fra kameraerne for at se, hvad der udløste alarmen.", + "Do I need Tesla Premium Connectivity to use SentryGuard?": "Har jeg brug for Tesla Premium Connectivity for at bruge SentryGuard?", + "Tesla Premium Connectivity requirement": "Nej, du har ikke brug for Tesla Premium Connectivity for at bruge SentryGuard. Tjenesten fungerer med Teslas standardforbindelse og bruger Fleet API til telemetridata. Premium Connectivity kan dog være påkrævet til visse avancerede Tesla-funktioner, men SentryGuard selv fungerer med køretøjets grundlæggende forbindelse.", + "Why doesn't Sentry Mode trigger when I test it myself?": "Hvorfor udløses Sentry Mode ikke, når jeg selv tester det?", + "Sentry Mode testing explanation": "Når du selv tester Sentry Mode med din telefon i nærheden, registrerer Tesla din digitale nøgle og udløser ikke Sentry Mode, fordi den genkender en autoriseret bruger. Sentry Mode aktiveres kun, når køretøjet fornemmer potentiel uautoriseret aktivitet. For at teste korrekt skal du enten bruge en andens telefon til at udløse bevægelses-/kameraregistrering eller teste på længere afstand uden din telefon til stede.", + "Why is SentryGuard faster than Tesla notifications?": "Hvorfor er SentryGuard hurtigere end Teslas notifikationer?", + "SentryGuard speed advantage explanation": "SentryGuard leverer øjeblikkelige notifikationer, så snart Tesla registrerer en hændelse og begynder at optage, hvilket giver dig øjeblikkelig viden om potentielle sikkerhedshændelser. Til sammenligning viser Teslas egen app først den optagede video, når optagelsen er færdig, og selv Teslas direkte notifikationer ankommer flere sekunder senere. Denne hastighedsfordel kan være afgørende for at reagere hurtigt på sikkerhedstrusler.", + "Does SentryGuard support older Model S/X vehicles?": "Understøtter SentryGuard ældre Model S/X-køretøjer?", + "Legacy vehicles support explanation": "Ja! Ældre Model S- og Model X-køretøjer (typisk bygget før 2021), der bruger MCU1- eller MCU2-infotainmentsystemet, understøttes fuldt ud af SentryGuard. I modsætning til nyere modeller understøtter eller kræver disse køretøjer ikke, at en virtuel nøgle parres, for at telemetrien virker. Du kan blot aktivere telemetrien direkte uden parringstrinnet.", + "Settings": "Indstillinger", + "Manage your account settings and preferences": "Administrér dine kontoindstillinger og præferencer", + "Account Information": "Kontooplysninger", + "Name": "Navn", + "Email": "E-mail", + "Danger Zone": "Farezone", + "Delete Account": "Slet konto", + "Delete account description": "Sletning af din konto er permanent og uigenkaldelig. Alle dine data, herunder telemetrikonfigurationer, Telegram-alarmer og køretøjsoplysninger, slettes permanent.", + "Delete account confirmation": "Er du sikker på, at du vil slette din konto? Denne handling er permanent og sletter alle dine data, herunder telemetrikonfigurationer og Telegram-alarmer. Denne handling kan ikke fortrydes.", + "Back to Dashboard": "Tilbage til dashboardet", + "You're on the Waitlist!": "Du er på ventelisten!", + "Thank you for your interest in SentryGuard": "Tak for din interesse i SentryGuard", + "We have received your registration for": "Vi har modtaget din tilmelding for", + "Your account is pending approval. We'll send you an email once your account has been approved and you can start using SentryGuard.": "Din konto afventer godkendelse. Vi sender dig en e-mail, så snart din konto er blevet godkendt, og du kan begynde at bruge SentryGuard.", + "Approval is typically processed within 24-48 hours.": "Godkendelse behandles typisk inden for 24-48 timer.", + "No email within 72 hours? Check your spam or promotions folder.": "Ingen e-mail inden for 72 timer? Tjek din spam- eller reklamemappe.", + "Back to home": "Tilbage til forsiden", + "Join our Discord community while you wait": "Bliv en del af vores Discord-fællesskab, mens du venter!", + "Join Discord": "Tilmeld dig Discord", + "Waitlist": "Venteliste", + "Why is there a waitlist?": "Hvorfor er der en venteliste?", + "Why is there a waitlist answer": "SentryGuard administrerer adgang via en venteliste for at sikre, at tjenesten forbliver stabil og pålidelig for alle brugere. Efterhånden som vi vokser, hjælper ventelisten os med at få nye brugere ombord på en gnidningsfri måde.", + "How long does waitlist approval take?": "Hvor lang tid tager godkendelse fra ventelisten?", + "How long does waitlist approval take answer": "Kontogodkendelser behandles typisk inden for 24 til 48 timer. Du modtager en velkomstmail, så snart din konto er blevet godkendt.", + "What happens after I'm approved?": "Hvad sker der, når jeg er blevet godkendt?", + "What happens after I'm approved answer": "Når du er godkendt, modtager du en velkomstmail med en trin-for-trin-guide til at komme i gang. Du får adgang til dit dashboard, hvor du kan konfigurere Telegram-alarmer, tilknytte en virtuel nøgle med dit køretøj og aktivere telemetriovervågning.", + "I signed up but didn't receive an approval email": "Jeg har tilmeldt mig, men har ikke modtaget en godkendelsesmail. Hvad skal jeg gøre?", + "I signed up but didn't receive an approval email answer": "Tjek først dine spam- og reklamemapper. Velkomstmailen sendes automatisk, så snart din konto er godkendt. Hvis du har spørgsmål om din status, bedes du kontakte os på hello@sentryguard.org med din e-mailadresse.", + "Can I check my waitlist status?": "Kan jeg tjekke min status på ventelisten?", + "Can I check my waitlist status answer": "Du kan tjekke din status ved at forsøge at logge ind. Hvis du bliver omdirigeret til ventelistesiden, afventer din konto stadig godkendelse. Når den er godkendt, kan du logge normalt ind på dit dashboard.", + "Can I use SentryGuard while on the waitlist?": "Kan jeg bruge SentryGuard, mens jeg er på ventelisten?", + "Can I use SentryGuard while on the waitlist answer": "Nej, du skal vente på godkendelse for at få adgang til dashboardet og bruge SentryGuards funktioner. Mens du venter, anbefaler vi, at du udforsker vores FAQ og dokumentation for at forberede dig, til din konto bliver godkendt.", + "What if I try to log in before being approved?": "Hvad sker der, hvis jeg forsøger at logge ind, før jeg er godkendt?", + "What if I try to log in before being approved answer": "Du bliver omdirigeret til ventelistesiden, hvor du kan se din e-mailadresse. Du forbliver på ventelisten, indtil vi godkender din konto, hvorefter du kan logge normalt ind.", + "Link Your Telegram Account": "Tilknyt din Telegram-konto", + "You will receive instant alerts when suspicious activity is detected": "Du modtager øjeblikkelige alarmer, når mistænkelig aktivitet registreres", + "💡 You are about to open Telegram. Once you've linked your account, return to SentryGuard to continue.": "💡 Du er ved at åbne Telegram. Når du har tilknyttet din konto, skal du vende tilbage til SentryGuard for at fortsætte.", + "How it works:": "Sådan fungerer det:", + "Click \"Generate Telegram Link\"": "Klik på \"Generér Telegram-link\"", + "Click the link to open Telegram": "Klik på linket for at åbne Telegram", + "The bot will automatically link your account": "Botten tilknytter automatisk din konto", + "Return here and continue": "Vend tilbage hertil, og fortsæt", + "Set Up Virtual Key": "Opsæt virtuel nøgle", + "Pair a virtual key with your vehicle in the Tesla app": "Tilknyt en virtuel nøgle med dit køretøj i Tesla-appen", + "🔐 This action happens entirely in the Tesla app. Once finished, return to SentryGuard to continue.": "🔐 Denne handling foregår udelukkende i Tesla-appen. Når du er færdig, skal du vende tilbage til SentryGuard for at fortsætte.", + "How to pair a virtual key:": "Sådan tilknytter du en virtuel nøgle:", + "Click \"Open Tesla App\" button below": "Klik på knappen \"Åbn Tesla-app\" nedenfor", + "The Tesla app will open and show a confirmation dialog": "Tesla-appen åbnes og viser en bekræftelsesdialog", + "Approve the virtual key request in the Tesla app": "Godkend anmodningen om den virtuelle nøgle i Tesla-appen", + "Return to SentryGuard to continue setup": "Vend tilbage til SentryGuard for at fortsætte opsætningen", + "Open Tesla App": "Åbn Tesla-app", + "I've opened the Tesla app": "Jeg har åbnet Tesla-appen", + "I've linked my Telegram": "Jeg har tilknyttet min Telegram", + "⏱️ Once you've opened the Tesla app and approved the virtual key, click the button above to continue.": "⏱️ Når du har åbnet Tesla-appen og godkendt den virtuelle nøgle, skal du klikke på knappen ovenfor for at fortsætte.", + "Confirm Virtual Key Setup": "Bekræft opsætning af virtuel nøgle", + "Verify that the virtual key was paired successfully": "Bekræft, at den virtuelle nøgle blev tilknyttet korrekt", + "✅ Virtual key detected!": "✅ Virtuel nøgle registreret!", + "⏳ Waiting for you to complete the virtual key setup in the Tesla app...": "⏳ Venter på, at du fuldfører opsætningen af den virtuelle nøgle i Tesla-appen...", + "No virtual key was detected. Please complete the setup in the Tesla app and try again.": "Der blev ikke registreret nogen virtuel nøgle. Fuldfør venligst opsætningen i Tesla-appen, og prøv igen.", + "Failed to check virtual key status. Please try again.": "Kunne ikke kontrollere status for den virtuelle nøgle. Prøv venligst igen.", + "What to expect:": "Hvad du kan forvente:", + "You approved the virtual key in the Tesla app": "Du godkendte den virtuelle nøgle i Tesla-appen", + "The key is now paired with your vehicle account": "Nøglen er nu tilknyttet din køretøjskonto", + "You can now enable telemetry monitoring": "Du kan nu aktivere telemetriovervågning", + "I've completed the Tesla app setup": "Jeg har fuldført opsætningen i Tesla-appen", + "Checking...": "Kontrollerer...", + "The button will check your vehicle for the paired virtual key": "Knappen kontrollerer dit køretøj for den tilknyttede virtuelle nøgle", + "Continue to Next Step": "Fortsæt til næste trin", + "Start monitoring your vehicle's Sentry Mode in real-time": "Begynd at overvåge dit køretøjs Sentry Mode i realtid", + "No vehicles found. Please refresh or check your Tesla account.": "Ingen køretøjer fundet. Opdater venligst, eller tjek din Tesla-konto.", + "📡 Telemetry monitoring is battery-efficient and uses Tesla's official API. You can enable it for one or more vehicles. You'll receive alerts via Telegram for each enabled vehicle.": "📡 Telemetriovervågning er batterivenlig og bruger Teslas officielle API. Du kan aktivere den for et eller flere køretøjer. Du modtager alarmer via Telegram for hvert aktiveret køretøj.", + "Complete Onboarding": "Fuldfør onboarding", + "Enable telemetry for at least one vehicle to complete setup": "Aktivér telemetri for mindst ét køretøj for at fuldføre opsætningen", + "Setup Wizard": "Opsætningsguide", + "Setup Complete!": "Opsætning fuldført!", + "Your SentryGuard is now fully configured. You will receive instant Telegram alerts when suspicious activity is detected.": "Din SentryGuard er nu fuldt konfigureret. Du modtager øjeblikkelige Telegram-alarmer, når mistænkelig aktivitet registreres.", + "Go to Dashboard": "Gå til dashboardet", + "Skip for now": "Spring over for nu", + "Skipping...": "Springer over...", + "Completing...": "Fuldfører...", + "Activating...": "Aktiverer...", + "Activate Telemetry": "Aktivér telemetri", + "✅ Telemetry enabled! Your setup is complete.": "✅ Telemetri aktiveret! Din opsætning er fuldført.", + "You will now receive instant Telegram alerts when suspicious activity is detected.": "Du modtager nu øjeblikkelige Telegram-alarmer, når mistænkelig aktivitet registreres.", + "What is the purpose of pairing a virtual key with SentryGuard?": "Hvad er formålet med at tilknytte en virtuel nøgle med SentryGuard?", + "Virtual key purpose explanation": "Den virtuelle nøgle, der er tilknyttet dit køretøj, er SentryGuards sikre identifikator. Den gør det muligt for din Tesla at verificere, at telemetrikonfigurationsbeskeder reelt kommer fra SentryGuard. Dette giver et ekstra sikkerhedslag ud over det godkendelsestoken, der genereres, når du første gang opretter forbindelse til Tesla. Dit køretøj verificerer både, at du (ejeren) har givet tilladelser til SentryGuard, og at det reelt er SentryGuard, der bruger disse tilladelser, og ikke en kompromitteret eller stjålet adgang.", + "Does SentryGuard work without internet connection?": "Fungerer SentryGuard uden internetforbindelse?", + "Internet connection requirement explanation": "Nej, internetadgang er nødvendig for, at SentryGuard kan fungere. Når en Sentry Mode-hændelse opstår, har din Tesla brug for en internetforbindelse (via WiFi eller mobilnetværk) for at sende hændelsesdataene til vores servere, som derefter videresender alarmen til dig via Telegram. Hvis dit køretøj befinder sig et sted uden internetadgang (såsom en parkeringskælder eller et land, hvor Tesla-forbindelse ikke er tilgængelig), kan alarmer ikke sendes, før køretøjet opretter forbindelse til internettet igen.", + "Why does the app crash when I use browser translation?": "Hvorfor går appen ned, når jeg bruger browseroversættelse?", + "Browser translation issue explanation": "Brug af din browsers automatiske oversættelsesfunktion (såsom Chromes \"Oversæt denne side\" eller lignende funktioner i andre browsere) kan få applikationen til at gå ned eller opføre sig uventet. SentryGuard understøtter allerede flere sprog indbygget. I stedet for at bruge browseroversættelse bedes du bruge sprogvælgeren i applikationens navigationslinje til at skifte mellem engelsk og fransk. Dette sikrer en stabil oplevelse uden tekniske problemer.", + "meta.home.title": "SentryGuard - Beskyt din Tesla", + "meta.home.description": "Overvågning i realtid og øjeblikkelige Telegram-alarmer for dit Tesla-køretøjs Sentry Mode. Batterivenlig, sikker og open source.", + "meta.home.ogDescription": "Overvågning i realtid og øjeblikkelige Telegram-alarmer for dit Tesla-køretøjs Sentry Mode.", + "meta.faq.title": "FAQ - SentryGuard", + "meta.faq.description": "Ofte stillede spørgsmål om SentryGuard. Lær, hvordan du beskytter din Tesla med Sentry Mode-overvågning i realtid og Telegram-alarmer.", + "meta.faq.ogDescription": "Ofte stillede spørgsmål om SentryGuards Tesla-overvågning.", + "Break-in Monitoring": "Indbrudsovervågning", + "Enable Break-in": "Aktivér indbrudsovervågning", + "Disable Break-in": "Deaktivér indbrudsovervågning", + "Failed to update Break-in monitoring": "Kunne ikke opdatere indbrudsovervågning", + "Offensive Response": "Offensiv respons", + "offensiveResponseOn": "Horn aktiveret", + "offensiveResponseOff": "Horn deaktiveret", + "offensiveResponseInfo": "Når en alarm udløses, vil køretøjet dytte eller prutte i et par sekunder.", + "Horn": "Horn", + "Fart": "Prut", + "offensiveResponseHonk": "Horn aktiveret ved indbrudsalarmer.", + "offensiveResponseFart": "Prut (boombox) udløst ved indbrudsalarmer.", + "offensiveResponseDisabled": "Deaktiveret.", + "offensiveChooseDuration": "Vælg aktiveringsvarighed:", + "offensiveDuration30m": "30 min", + "offensiveDuration1h": "1 t", + "offensiveDuration2h": "2 t", + "offensiveDuration4h": "4 t", + "offensiveDuration8h": "8 t", + "offensiveDuration24h": "24 t", + "offensiveProlong": "Forlæng", + "offensiveCancel": "Annullér", + "Failed to update offensive response": "Kunne ikke opdatere offensiv respons", + "Auto Sentry Mode": "Automatisk Sentry Mode", + "autoSentryModeInfo": "Når et indbrudsforsøg registreres, aktiveres Sentry Mode automatisk, så kameraerne kan optage.", + "Failed to update auto sentry mode": "Kunne ikke opdatere automatisk Sentry Mode", + "Never miss a door ding again.": "Gå aldrig glip af en bule i døren igen.", + "Get instant Telegram alerts the second your Tesla detects a threat. Zero battery drain.": "Få øjeblikkelige Telegram-alarmer i det sekund, din Tesla registrerer en trussel. Nul batteridræn.", + "The Tesla App is not enough.": "Tesla-appen er ikke nok.", + "The official app only alerts you for direct threats like alarms. For everything else—like door dings or scratches—you're left in the dark until you check your car.": "Den officielle app advarer dig kun om direkte trusler som alarmer. For alt andet – som buler i døren eller ridser – er du i uvished, indtil du tjekker din bil.", + "Without SentryGuard": "Uden SentryGuard", + "A shopping cart hits your car. The alarm doesn't trigger. The Tesla app stays silent. You find out too late.": "En indkøbsvogn rammer din bil. Alarmen udløses ikke. Tesla-appen forbliver tavs. Du opdager det for sent.", + "With SentryGuard": "Med SentryGuard", + "Sentry Mode records the event. SentryGuard instantly pushes a Telegram alert to your phone. You can react immediately.": "Sentry Mode optager hændelsen. SentryGuard sender øjeblikkeligt en Telegram-alarm til din telefon. Du kan reagere med det samme.", + "How it works": "Sådan fungerer det", + "1. Connect your Tesla": "1. Tilslut din Tesla", + "Securely link your vehicle using official Tesla OAuth. We never see your password.": "Tilknyt sikkert dit køretøj med officiel Tesla OAuth. Vi ser aldrig din adgangskode.", + "2. Smart Telemetry": "2. Smart telemetri", + "Our servers listen to the official telemetry stream. Zero polling means absolutely zero battery drain.": "Vores servere lytter til den officielle telemetristrøm. Ingen forespørgsler betyder absolut nul batteridræn.", + "3. Instant Alerts": "3. Øjeblikkelige alarmer", + "Receive push notifications via our mobile app or Telegram bot the exact second Sentry Mode is triggered.": "Modtag push-notifikationer via vores mobilapp eller vores Telegram-bot i det sekund, Sentry Mode udløses.", + "Support a Community Project": "Støt et fællesskabsprojekt", + "SentryGuard is a 100% free, open-source project built by Tesla owners, for Tesla owners. It is maintained entirely through community donations.": "SentryGuard er et 100 % gratis open source-projekt, skabt af Tesla-ejere for Tesla-ejere. Det vedligeholdes udelukkende gennem donationer fra fællesskabet.", + "Zero Battery Impact": "Nul batteripåvirkning", + "Protection that doesn't drain your battery.": "Beskyttelse, der ikke dræner dit batteri.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard integrates deeply with Tesla's API to instantly alert you if someone pulls your door handle—even when Sentry Mode is completely disabled.": "Slår du Sentry Mode fra hjemme eller på arbejdet for at spare rækkevidde? Intet problem. SentryGuard integrerer dybt med Teslas API for øjeblikkeligt at advare dig, hvis nogen trækker i dit dørhåndtag – selv når Sentry Mode er helt deaktiveret.", + "Detects break-ins even with Sentry Mode OFF": "Registrerer indbrud selv med Sentry Mode slået FRA", + "Total protection for your Tesla. Zero battery drain.": "Total beskyttelse af din Tesla. Nul batteridræn.", + "Get instant Telegram alerts for door dings and break-in attempts, even when Sentry Mode is disabled.": "Få øjeblikkelige Telegram-alarmer ved buler i døren og indbrudsforsøg, selv når Sentry Mode er deaktiveret.", + "The official app only alerts you if the main alarm triggers. SentryGuard fills the critical security gaps.": "Den officielle app advarer dig kun, hvis hovedalarmen udløses. SentryGuard udfylder de kritiske sikkerhedshuller.", + "The Tesla app stays silent for door dings. And if you turn off Sentry Mode to save battery, you have absolutely zero protection against break-ins.": "Tesla-appen forbliver tavs ved buler i døren. Og hvis du slår Sentry Mode fra for at spare på batteriet, har du absolut nul beskyttelse mod indbrud.", + "Get instant Telegram alerts when Sentry Mode detects a scratch, OR when someone pulls your locked door handle while Sentry Mode is completely disabled.": "Få øjeblikkelige Telegram-alarmer, når Sentry Mode registrerer en ridse, ELLER når nogen trækker i dit låste dørhåndtag, mens Sentry Mode er helt deaktiveret.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard uses advanced telemetry to instantly alert you if someone pulls your door handle—even when Sentry Mode is off.": "Slår du Sentry Mode fra hjemme eller på arbejdet for at spare rækkevidde? Intet problem. SentryGuard bruger avanceret telemetri til øjeblikkeligt at advare dig, hvis nogen trækker i dit dørhåndtag – selv når Sentry Mode er slået fra.", + "Connect our Telegram bot and receive push notifications the exact second a threat is detected.": "Tilslut vores Telegram-bot, og modtag push-notifikationer i præcis det sekund, en trussel registreres.", + "Get instant Telegram alerts for Sentry Mode events, and break-in attempts even when Sentry Mode is disabled.": "Få øjeblikkelige Telegram-alarmer ved Sentry Mode-hændelser og indbrudsforsøg, selv når Sentry Mode er deaktiveret.", + "Two critical features the Tesla App is missing.": "To kritiske funktioner, som Tesla-appen mangler.", + "The official app leaves gaps in your security. We fill them with instant push notifications and Telegram alerts.": "Den officielle app efterlader huller i din sikkerhed. Vi udfylder dem med øjeblikkelige push-notifikationer og Telegram-alarmer.", + "Requires Sentry Mode ON": "Kræver Sentry Mode slået TIL", + "1. Sentry Mode Alerts": "1. Sentry Mode-alarmer", + "Get notified instantly for door dings, scratches, and parking lot accidents.": "Bliv underrettet øjeblikkeligt ved buler i døren, ridser og uheld på parkeringspladsen.", + "Tesla App": "Tesla-app", + "Stays silent for minor impacts. You only discover the damage when you get back to your car.": "Forbliver tavs ved mindre påkørsler. Du opdager først skaden, når du kommer tilbage til din bil.", + "Instantly pushes an alert to your phone the moment Sentry Mode triggers, so you can react immediately.": "Sender øjeblikkeligt en alarm til din telefon i det øjeblik, Sentry Mode udløses, så du kan reagere med det samme.", + "Works with Sentry Mode OFF": "Fungerer med Sentry Mode slået FRA", + "2. Break-in Detection": "2. Indbrudsregistrering", + "Alerts you if someone pulls your door handle, even when you're saving battery.": "Advarer dig, hvis nogen trækker i dit dørhåndtag, selv når du sparer på batteriet.", + "If Sentry Mode is off to save battery at home or at night, you get zero notifications if someone tries to break in.": "Hvis Sentry Mode er slået fra for at spare på batteriet hjemme eller om natten, får du ingen notifikationer, hvis nogen forsøger at bryde ind.", + "Uses advanced telemetry to detect handle pulls and alert you instantly, even when Sentry Mode is disabled.": "Bruger avanceret telemetri til at registrere træk i håndtaget og advare dig øjeblikkeligt, selv når Sentry Mode er deaktiveret.", + "The missing security alerts for your Tesla.": "De manglende sikkerhedsalarmer for din Tesla.", + "Get an instant push notification the second Sentry Mode records a threat, or when someone pulls your door handle—even if you disabled Sentry Mode to save battery.": "Få en øjeblikkelig push-notifikation i det sekund, Sentry Mode optager en trussel, eller når nogen trækker i dit dørhåndtag – selv hvis du har deaktiveret Sentry Mode for at spare på batteriet.", + "Unlock commands": "Lås kommandoer op", + "Authorize SentryGuard to interact with your vehicle.": "Giv SentryGuard tilladelse til at interagere med dit køretøj.", + "Authorize": "Godkend", + "offensiveResponseLockedTitle": "Autorisation til køretøjskommandoer påkrævet", + "offensiveResponseLockedDescription": "Automatisk Sentry Mode og offensiv respons kræver tilladelse til at sende kommandoer til din Tesla.", + "offensiveResponseLockedButton": "Godkend køretøjskommandoer", + "Privacy Policy": "Privatlivspolitik", + "Terms of Service": "Servicevilkår", + "New features available": "Nye funktioner tilgængelige", + "SentryGuard has new advanced security capabilities to better protect your Tesla.": "SentryGuard har nye avancerede sikkerhedsfunktioner til bedre at beskytte din Tesla.", + "Detects intrusion attempts on your vehicle. You receive an instant Telegram alert as soon as a break-in attempt is detected.": "Registrerer indtrængningsforsøg på dit køretøj. Du modtager en øjeblikkelig Telegram-alarm, så snart et indbrudsforsøg registreres.", + "Offensive Response (Horn)": "Offensiv respons (horn)", + "When the offensive response is active, your vehicle horn triggers automatically upon detection to deter intruders immediately.": "Når den offensive respons er aktiv, udløses dit køretøjs horn automatisk ved registrering for øjeblikkeligt at afskrække ubudne gæster.", + "💡 These features are available in the Vehicles section. You can enable break-in monitoring and configure the offensive response for each vehicle independently.": "💡 Disse funktioner er tilgængelige i sektionen Køretøjer. Du kan aktivere indbrudsovervågning og konfigurere den offensive respons for hvert køretøj uafhængigt.", + "Understood, let's go!": "Forstået, så er vi i gang!", + "Failed to continue, please try again": "Kunne ikke fortsætte, prøv igen.", + "Security Shield Configuration": "Konfiguration af sikkerhedsskjold", + "Configure the security features for this vehicle below.": "Konfigurér sikkerhedsfunktionerne for dette køretøj nedenfor.", + "Receive alerts on Telegram when an intrusion is detected": "Modtag alarmer på Telegram, når en indtrængning registreres", + "Enable Sentry Mode Monitoring": "Aktivér Sentry Mode-overvågning", + "Activate Sentry Mode Monitoring": "Aktivér Sentry Mode-overvågning", + "✅ Security monitoring enabled! Your setup is complete.": "✅ Sikkerhedsovervågning aktiveret! Din opsætning er fuldført.", + "Four critical features the Tesla App is missing.": "Fire kritiske funktioner, som Tesla-appen mangler.", + "Three critical features the Tesla App is missing.": "Tre kritiske funktioner, som Tesla-appen mangler.", + "Smart Recording": "Smart optagelse", + "3. Auto Sentry Activation": "3. Automatisk Sentry-aktivering", + "Automatically wakes up Sentry Mode and starts camera recording the second a break-in attempt is detected, even if Sentry was off.": "Vækker automatisk Sentry Mode og starter kameraoptagelse i det sekund, et indbrudsforsøg opdages, selv hvis Sentry var slukket.", + "If Sentry Mode is off to save battery, cameras remain offline. You get zero video footage of the incident.": "Hvis Sentry Mode er slukket for at spare på batteriet, forbliver kameraerne offline. Du får ingen videooptagelse af hændelsen.", + "Instantly arms Sentry Mode upon handle pull or breach attempt, waking up all cameras to capture the suspect on video.": "Aktiverer Sentry Mode øjeblikkeligt, når nogen trækker i dørhåndtaget eller ved et indbrudsforsøg, og vækker alle kameraerne for at filme gerningsmanden.", + "4. Active Deterrent": "4. Aktiv afskrækkelse", + "3. Active Deterrent": "3. Aktiv afskrækkelse", + "Automatically scare off intruders by triggering your vehicle's horn or boombox sound the moment a break-in is detected.": "Skræm automatisk ubudne gæster væk ved at udløse dit køretøjs horn eller boombox-lyd, i det øjeblik et indbrud registreres.", + "Stays passive and silent. The intruder can continue their attempt without any immediate local deterrent.": "Forbliver passiv og tavs. Den ubudne gæst kan fortsætte sit forsøg uden nogen øjeblikkelig lokal afskrækkelse.", + "Triggers a loud sound deterrent within seconds to alert bystanders and scare away the intruder.": "Intelligent afskrækkelse. Lydalarmer udløses kun af reelle trusler (som træk i dørhåndtaget), hvilket forhindrer irriterende falske alarmer.", + "Active Defense": "Aktivt forsvar", + "What is the Active Deterrent (Offensive Response) and how does it work?": "Hvad er den aktive afskrækkelse (offensiv respons), og hvordan fungerer den?", + "Active deterrent explanation": "Den aktive afskrækkelse er en sikkerhedsfunktion, der automatisk udløser en lydhandling fra dit køretøj (horn eller boombox-pruttelyd), når et reelt, fysisk indbrud registreres (som et træk i dørhåndtaget). I modsætning til andre apps, der dytter ved enhver bevægelsesregistrering fra kameraet (hvilket forårsager konstante falske alarmer), bruger vores system telemetri til kun at reagere på reelle trusler. Denne funktion er helt valgfri, deaktiveret som standard og kan til enhver tid konfigureres fuldt ud eller deaktiveres for hvert køretøj fra dit dashboard.", + "Do I have to grant write permissions (vehicle commands) to SentryGuard?": "Skal jeg give SentryGuard skrivetilladelser (køretøjskommandoer)?", + "Write permissions requirement explanation": "Nej. SentryGuard fungerer perfekt i en rent passiv (skrivebeskyttet) tilstand, hvis du kun ønsker at modtage Telegram-alarmnotifikationer. Tilladelsen til at sende styringskommandoer anmodes om og kræves kun, hvis du udtrykkeligt vælger at aktivere den aktive afskrækkelsesfunktion for at udløse hornet eller boombox-lyden ved et indbrud. Hvis du ikke aktiverer denne funktion, kræver SentryGuard absolut ingen skriveadgang til din Tesla.", + "Get the app": "Hent appen", + "Get the mobile app": "Download mobilappen", + "or": "eller" +} diff --git a/apps/webapp/src/locales/de/common.json b/apps/webapp/src/locales/de/common.json new file mode 100644 index 00000000..e128b4bf --- /dev/null +++ b/apps/webapp/src/locales/de/common.json @@ -0,0 +1,471 @@ +{ + "© {{year}} SentryGuard. All rights reserved.": "© {{year}} SentryGuard. Alle Rechte vorbehalten.", + "← Back to home": "← Zurück zur Startseite", + "⏳ Waiting for you to click the link and start the bot...": "⏳ Warten darauf, dass Sie auf den Link klicken und den Bot starten...", + "✅ Your Telegram account is successfully linked!": "✅ Ihr Telegram-Konto wurde erfolgreich verknüpft!", + "About Telemetry": "Über Telemetrie", + "Additional Permissions Required": "Zusätzliche Berechtigungen erforderlich", + "Are you sure you want to disable telemetry for this vehicle?": "Möchten Sie die Telemetrie für dieses Fahrzeug wirklich deaktivieren?", + "Are you sure you want to unlink your Telegram account?": "Möchten Sie die Verknüpfung Ihres Telegram-Kontos wirklich aufheben?", + "Authenticating...": "Authentifizierung läuft...", + "Authentication Failed": "Authentifizierung fehlgeschlagen", + "Authentication failed {{error}}": "Authentifizierung fehlgeschlagen: {{error}}", + "Authentication successful! Checking consent status...": "Authentifizierung erfolgreich! Einwilligungsstatus wird überprüft...", + "Authentication successful! Redirecting to consent form...": "Authentifizierung erfolgreich! Weiterleitung zum Einwilligungsformular...", + "Authentication successful! Redirecting to dashboard...": "Authentifizierung erfolgreich! Weiterleitung zum Dashboard...", + "Battery-Efficient Monitoring": "Akkuschonende Überwachung", + "Click \"Fix Permissions\" to re-authenticate with Tesla and grant the required permissions. You'll be redirected back here automatically.": "Klicken Sie auf \"Berechtigungen korrigieren\", um sich erneut bei Tesla zu authentifizieren und die erforderlichen Berechtigungen zu erteilen. Sie werden automatisch hierher zurückgeleitet.", + "Click \"Generate Telegram Link\" to create a unique connection link that expires in 15 minutes.": "Klicken Sie auf \"Telegram-Link generieren\", um einen eindeutigen Verbindungslink zu erstellen, der in 15 Minuten abläuft.", + "Click the link to open our Telegram bot. The bot will automatically send a /start command with your unique token.": "Klicken Sie auf den Link, um unseren Telegram-Bot zu öffnen. Der Bot sendet automatisch einen /start-Befehl mit Ihrem eindeutigen Token.", + "Configure →": "Konfigurieren →", + "Configuring...": "Konfiguration läuft...", + "Confirm Connection": "Verbindung bestätigen", + "Connecting...": "Verbindung wird hergestellt...", + "Copied!": "Kopiert!", + "Copy": "Kopieren", + "Dashboard": "Dashboard", + "Disable": "Deaktivieren", + "Disable Telemetry": "Telemetrie deaktivieren", + "Disabled": "Deaktiviert", + "Disabling...": "Deaktivierung läuft...", + "Enable": "Aktivieren", + "Enable Telemetry": "Telemetrie aktivieren", + "Enabled": "Aktiviert", + "Enabling telemetry allows SentryGuard to monitor your vehicle's Sentry Mode status in real-time. When suspicious activity is detected, you'll receive instant alerts via Telegram.": "Durch die Aktivierung der Telemetrie kann SentryGuard den Sentry Mode-Status Ihres Fahrzeugs in Echtzeit überwachen, ohne Ihren Akku zu belasten. Wenn verdächtige Aktivitäten erkannt werden, erhalten Sie sofortige Benachrichtigungen über Telegram.", + "End-to-end encrypted communication with Tesla's official API. Your data stays yours.": "Ende-zu-Ende-verschlüsselte Kommunikation mit der offiziellen API von Tesla. Ihre Daten bleiben Ihre.", + "Failed to initiate login": "Anmeldung konnte nicht gestartet werden", + "Failed to configure telemetry": "Telemetrie konnte nicht konfiguriert werden", + "Failed to enable telemetry": "Telemetrie konnte nicht aktiviert werden", + "Failed to disable telemetry": "Telemetrie konnte nicht deaktiviert werden", + "Virtual key not added to the vehicle": "Virtueller Schlüssel nicht zum Fahrzeug hinzugefügt", + "Unsupported hardware (pre-2018 Model S/X)": "Nicht unterstützte Hardware (Model S/X vor 2018)", + "Unsupported firmware version for telemetry": "Nicht unterstützte Firmware-Version für Telemetrie", + "Maximum telemetry configurations already present": "Maximale Anzahl an Telemetrie-Konfigurationen bereits erreicht", + "Vehicle skipped for an unknown reason": "Fahrzeug aus unbekanntem Grund übersprungen", + "Vehicle skipped for an unknown reason: {{details}}": "Fahrzeug aus unbekanntem Grund übersprungen: {{details}}", + "Fix Permissions": "Berechtigungen korrigieren", + "Generate Link": "Link generieren", + "Generate Telegram Link": "Telegram-Link generieren", + "Generating...": "Generierung läuft...", + "GitHub": "GitHub", + "How It Works": "So funktioniert es", + "If donations no longer cover expenses, the service may shut down, become paid (at actual cost, around $0.50/user), or be limited to current users. Your support keeps it free and open!": "Wenn die Spenden die Kosten nicht mehr decken, kann der Dienst eingestellt, kostenpflichtig (zum tatsächlichen Preis von etwa 0,50 $/Nutzer) oder auf bestehende Nutzer beschränkt werden. Ihre Unterstützung hält ihn kostenlos und offen!", + "Instant Alerts": "Sofortige Benachrichtigungen", + "Instant Telegram notifications": "Sofortige Telegram-Benachrichtigungen", + "Link your Telegram account to receive instant vehicle alerts": "Verknüpfen Sie Ihr Telegram-Konto, um sofortige Fahrzeugbenachrichtigungen zu erhalten", + "Link your Telegram account to receive vehicle alerts.": "Verknüpfen Sie Ihr Telegram-Konto, um Fahrzeugbenachrichtigungen zu erhalten.", + "Linked": "Verknüpft", + "Linked on": "Verknüpft am", + "Loading...": "Wird geladen...", + "Login Cancelled": "Anmeldung abgebrochen", + "Login with Tesla": "Mit Tesla anmelden", + "You cancelled the Tesla login. You can try again whenever you're ready.": "Sie haben die Tesla-Anmeldung abgebrochen. Sie können es jederzeit erneut versuchen.", + "Logout": "Abmelden", + "Manage": "Verwalten", + "Manage Sentry Mode telemetry monitoring": "Verwalten Sie die Sentry Mode-Telemetrieüberwachung für Ihre Tesla-Fahrzeuge", + "Manage Vehicles": "Fahrzeuge verwalten", + "Model": "Modell", + "Monitor and protect your Tesla vehicles": "Überwachen und schützen Sie Ihre Tesla-Fahrzeuge", + "Monitor Sentry Mode via telemetry without battery drain": "Überwachen Sie den Sentry Mode-Status Ihres Fahrzeugs per Telemetrie, ohne Ihren Akku zu belasten.", + "No vehicles": "Keine Fahrzeuge", + "No vehicles found": "Keine Fahrzeuge gefunden", + "No vehicles found in your Tesla account. They will appear here automatically once detected.": "Keine Fahrzeuge in Ihrem Tesla-Konto gefunden. Sie werden hier automatisch angezeigt, sobald sie erkannt werden.", + "Not affiliated with Tesla, Inc. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Nicht mit Tesla, Inc. verbunden. Tesla und das Tesla-Logo sind Marken von Tesla, Inc.", + "Not linked": "Nicht verknüpft", + "Offline access": "Offline-Zugriff", + "Open in Telegram": "In Telegram öffnen", + "Open Telegram": "Telegram öffnen", + "OpenID authentication": "OpenID-Authentifizierung", + "Pair Virtual Key": "Virtuellen Schlüssel koppeln", + "Permission Update Required": "Aktualisierung der Berechtigungen erforderlich", + "Privacy & Security": "Datenschutz und Sicherheit", + "Processing authentication...": "Authentifizierung wird verarbeitet...", + "Protect Your Tesla": "Schützen Sie Ihren Tesla", + "Quick Actions": "Schnellaktionen", + "Re-authenticating...": "Erneute Authentifizierung läuft...", + "Real-time monitoring and instant alerts for your Tesla vehicle": "Echtzeitüberwachung und sofortige Benachrichtigungen für Ihr Tesla-Fahrzeug", + "Real-time Sentry Mode monitoring": "Echtzeitüberwachung des Sentry Mode", + "Receive Alerts": "Benachrichtigungen erhalten", + "Receive real-time Telegram notifications when your vehicle's Sentry Mode is triggered.": "Erhalten Sie Telegram-Benachrichtigungen in Echtzeit, wenn der Sentry Mode Ihres Fahrzeugs ausgelöst wird.", + "Refresh": "Aktualisieren", + "Refresh Vehicles": "Fahrzeuge aktualisieren", + "Return to Home": "Zurück zur Startseite", + "Secure & Private": "Sicher und privat", + "Secure end-to-end encryption": "Sichere Ende-zu-Ende-Verschlüsselung", + "Secure OAuth authentication powered by Tesla": "Sichere OAuth-Authentifizierung von Tesla", + "Send Test Message": "Testnachricht senden", + "Sending...": "Wird gesendet...", + "SentryGuard": "SentryGuard", + "SentryGuard is a non-profit, open-source project built by the community for Tesla owners. It depends on donations to cover server and development costs.": "SentryGuard ist ein gemeinnütziges Open-Source-Projekt, das von der Community für Tesla-Besitzer entwickelt wurde. Es ist auf Spenden angewiesen, um die Server- und Entwicklungskosten zu decken.", + "SentryGuard is a non-profit, open-source project developed by the community for Tesla owners.": "SentryGuard ist ein gemeinnütziges Open-Source-Projekt, das von der Community für Tesla-Besitzer entwickelt wurde.", + "SentryGuard needs additional permissions to work properly": "SentryGuard benötigt zusätzliche Berechtigungen, um ordnungsgemäß zu funktionieren", + "Setup": "Einrichtung", + "Success!": "Erfolg!", + "Support SentryGuard": "SentryGuard unterstützen", + "Telegram": "Telegram", + "Telegram Alerts": "Telegram-Benachrichtigungen", + "Telegram Configuration": "Telegram-Konfiguration", + "Telemetry Enabled": "Telemetrie aktiviert", + "Tesla Authorization Revoked": "Tesla-Autorisierung widerrufen", + "Tesla security policies required re-authorization": "Tesla-Sicherheitsrichtlinien erforderten eine erneute Autorisierung", + "Telemetry monitors Sentry Mode and sends alerts without draining battery": "SentryGuard nutzt Telemetrie, um den Sentry Mode-Status Ihres Fahrzeugs zu überwachen, und sendet sofortige Telegram-Benachrichtigungen, wenn verdächtige Aktivitäten erkannt werden. Eine effiziente Überwachung, die Ihren Akku nicht belastet.", + "Sentry Mode Monitoring": "Sentry Mode-Überwachung", + "Test message sent! Check your Telegram.": "Testnachricht gesendet! Überprüfen Sie Ihr Telegram.", + "This link expires in {{minutes}} minutes": "Dieser Link läuft in {{minutes}} Minuten ab", + "To continue using SentryGuard, please reconnect your Tesla account.": "Um SentryGuard weiterhin zu nutzen, verbinden Sie bitte Ihr Tesla-Konto erneut.", + "Unlink": "Verknüpfung aufheben", + "Unlinking...": "Verknüpfung wird aufgehoben...", + "User profile data": "Benutzerprofildaten", + "Vehicle telemetry data": "Fahrzeug-Telemetriedaten", + "Vehicles": "Fahrzeuge", + "View all →": "Alle anzeigen →", + "VIN": "VIN", + "Virtual Key Not Paired": "Virtueller Schlüssel nicht gekoppelt", + "Virtual Key Paired": "Virtueller Schlüssel gekoppelt", + "Welcome back": "Willkommen zurück", + "You need to pair your Tesla account with a virtual key to use SentryGuard.": "Sie müssen Ihr Tesla-Konto mit einem virtuellen Schlüssel koppeln, um SentryGuard zu nutzen.", + "You're all set! You'll now receive instant Telegram notifications when your vehicle's Sentry Mode is triggered.": "Alles bereit! Sie erhalten ab jetzt sofortige Telegram-Benachrichtigungen, wenn der Sentry Mode Ihres Fahrzeugs ausgelöst wird.", + "Your account will be linked instantly. Return to this page to see the confirmation and send a test message.": "Ihr Konto wird sofort verknüpft. Kehren Sie zu dieser Seite zurück, um die Bestätigung zu sehen und eine Testnachricht zu senden.", + "Your Telegram account is connected. You will receive alerts here.": "Ihr Telegram-Konto ist verbunden. Sie erhalten hier Benachrichtigungen.", + "Your Telegram chat ID is securely stored and only used to send you vehicle alerts. You can unlink your account at any time, and all associated data will be removed.": "Ihre Telegram-Chat-ID wird sicher gespeichert und nur verwendet, um Ihnen Fahrzeugbenachrichtigungen zu senden. Sie können die Verknüpfung Ihres Kontos jederzeit aufheben, und alle zugehörigen Daten werden entfernt.", + "Your Telegram Link": "Ihr Telegram-Link", + "Your Tesla account is successfully paired with a virtual key.": "Ihr Tesla-Konto wurde erfolgreich mit einem virtuellen Schlüssel gekoppelt.", + "Your Tesla account needs additional permissions to use SentryGuard": "Ihr Tesla-Konto benötigt zusätzliche Berechtigungen, um SentryGuard zu nutzen", + "Your Tesla account access has been removed. This typically happens when:": "Der Zugriff auf Ihr Tesla-Konto wurde entfernt. Dies geschieht in der Regel, wenn:", + "You removed SentryGuard from your Tesla account": "Sie SentryGuard aus Ihrem Tesla-Konto entfernt haben", + "You changed your Tesla account password": "Sie Ihr Tesla-Kontopasswort geändert haben", + "Your session has expired. Please log in again.": "Ihre Sitzung ist abgelaufen. Bitte melden Sie sich erneut an.", + "Your Vehicles": "Ihre Fahrzeuge", + "Your vehicles will appear here once they are synced from your Tesla account. Visit the Vehicles page to refresh.": "Ihre Fahrzeuge werden hier angezeigt, sobald sie aus Ihrem Tesla-Konto synchronisiert wurden. Besuchen Sie die Fahrzeugseite, um zu aktualisieren.", + "Something went wrong": "Etwas ist schiefgelaufen", + "We encountered an unexpected error. Please try refreshing the page.": "Es ist ein unerwarteter Fehler aufgetreten. Bitte versuchen Sie, die Seite zu aktualisieren.", + "Try Again": "Erneut versuchen", + "Reloading...": "Wird neu geladen...", + "If the problem persists, please contact support.": "Wenn das Problem weiterhin besteht, kontaktieren Sie bitte den Support.", + "Tesla Fleet API Consent": "Tesla Fleet API-Einwilligung", + "Please read and accept the terms below to continue": "Bitte lesen und akzeptieren Sie die nachstehenden Bedingungen, um fortzufahren", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Mit der Unterzeichnung oder Annahme dieses Formulars willigen Sie in die Verarbeitung Ihrer personenbezogenen Daten durch SentryGuardOrg („Partner“) im Rahmen der Anwendung des Partners mit dem Titel SentryGuard (die „App“) ein.", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "Der Partner ist der für die Verarbeitung Ihrer personenbezogenen Daten im Rahmen der App verantwortliche Verantwortliche.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Mit der Unterzeichnung oder Annahme dieses Formulars bestätigen Sie außerdem den Erhalt der Tesla-Datenschutzhinweise für Kunden, verfügbar unter", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(„Tesla-Datenschutzhinweis“) und willigen in die Verarbeitung Ihrer personenbezogenen Daten durch Tesla gemäß dem Tesla-Datenschutzhinweis ein.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (e.g., event detection, Sentry Mode alerts).": "Die App ermöglicht Ihnen die Nutzung erweiterter Überwachungs- und Benachrichtigungsfunktionen, die auf dem Sentry Mode Ihres Tesla-Fahrzeugs basieren, einschließlich der Erkennung und Protokollierung von Sicherheitsereignissen (z. B. Ereigniserkennung, Sentry Mode-Benachrichtigungen).", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events) and metadata associated with Sentry Mode events (date/time, event type).": "Um diese Funktionen bereitzustellen, muss der Partner einige Ihrer personenbezogenen Daten verarbeiten, die Folgendes umfassen können:\n\n- Profilinformationen (Kontokennung, Anzeigename oder E-Mail-Adresse, erforderlich, um Ereignisse mit Ihrem Konto zu verknüpfen);\n\n- minimale Fahrzeuginformationen, die für die Funktion der App erforderlich sind, einschließlich Fahrzeugkennung (VIN oder gleichwertig), Sentry Mode-Status (Aktivierung, erkannte Ereignisse) und Metadaten zu Sentry Mode-Ereignissen (Datum/Uhrzeit, Ereignistyp).", + "Partner does not access or process other categories of data from your vehicle (e.g., remote commands, detailed driving data, battery or precise location information), beyond what is strictly necessary for the App to function as described above.": "Der Partner greift nicht auf andere Datenkategorien Ihres Fahrzeugs zu und verarbeitet diese nicht (z. B. Fernbefehle, detaillierte Fahrdaten, Akku- oder genaue Standortinformationen), über das hinaus, was für die Funktion der App wie oben beschrieben unbedingt erforderlich ist.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "Der Partner verwendet diese Informationen ausschließlich für:\n\n(a) die Bereitstellung der Überwachungs- und Benachrichtigungsfunktionen im Zusammenhang mit dem Sentry Mode;\n\n(b) die Verknüpfung von Sentry Mode-Ereignissen mit Ihrem Benutzerkonto und Fahrzeug;\n\n(c) die Verbesserung der Zuverlässigkeit und Sicherheit des Dienstes (z. B. Diagnose technischer Vorfälle);\n\n(d) die Erfüllung geltender gesetzlicher Verpflichtungen, sofern zutreffend.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "Der Partner unterhält administrative, technische und physische Schutzmaßnahmen, die darauf ausgelegt sind, personenbezogene Daten vor versehentlicher, rechtswidriger oder unbefugter Zerstörung, Verlust, Veränderung, Zugriff, Offenlegung oder Nutzung zu schützen, einschließlich der Verschlüsselung von Daten während der Übertragung und, sofern angemessen, im Ruhezustand. Der Partner speichert Ihre personenbezogenen Daten nur so lange, wie es erforderlich ist, um Ihnen die App und die oben beschriebenen Funktionen bereitzustellen, sofern nicht durch geltendes Recht etwas anderes vorgeschrieben oder gestattet ist oder Sie eine vorzeitige Löschung verlangen.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "Die App wird „wie besehen“ und „je nach Verfügbarkeit“ ohne jegliche Gewährleistung bereitgestellt. SentryGuard und seine Autoren lehnen jede Haftung für direkte, indirekte, zufällige, besondere oder Folgeschäden ab, einschließlich, aber nicht beschränkt auf Fahrzeugschäden, Datenverlust oder Dienstunterbrechungen, die sich aus der Nutzung oder der Unmöglichkeit der Nutzung der App ergeben. Der Nutzer übernimmt die alleinige und volle Verantwortung für die Nutzung der App und alle konfigurierten automatisierten Aktionen (wie das Betätigen der Hupe).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "Vorbehaltlich des geltenden Rechts (einschließlich der DSGVO) haben Sie möglicherweise das Recht, Auskunft über Ihre personenbezogenen Daten zu verlangen und Informationen darüber zu erhalten, Ungenauigkeiten zu aktualisieren und zu berichtigen sowie die Löschung zu verlangen, sofern die gesetzlichen Voraussetzungen erfüllt sind. Sie haben außerdem das Recht, Ihre Einwilligung jederzeit kostenlos zu widerrufen, was jedoch die Nutzung der App einschränken oder verhindern kann.\n\nUm Ihre Rechte auszuüben, Ihre Einwilligung zu widerrufen oder weitere Informationen über die App und die Verarbeitung Ihrer personenbezogenen Daten zu erhalten, können Sie den Partner unter folgender Adresse kontaktieren: hello@sentryguard.org.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Ich willige in die Erhebung, Nutzung und Verarbeitung meiner personenbezogenen Daten wie oben beschrieben ein.", + "I Accept": "Ich stimme zu", + "Processing...": "Wird verarbeitet...", + "Consent accepted successfully!": "Einwilligung erfolgreich angenommen!", + "Accepted at: {{date}}": "Angenommen am: {{date}}", + "Redirecting to dashboard...": "Weiterleitung zum Dashboard...", + "By clicking \"I Accept\", you agree to the terms above and consent to the processing of your personal data.": "Indem Sie auf \"Ich stimme zu\" klicken, akzeptieren Sie die oben genannten Bedingungen und willigen in die Verarbeitung Ihrer personenbezogenen Daten ein.", + "Revoke Consent": "Einwilligung widerrufen", + "Are you sure you want to revoke your consent? This will permanently delete your account and all associated data, including telemetry configurations.": "Möchten Sie Ihre Einwilligung wirklich widerrufen? Dadurch werden Ihr Konto und alle zugehörigen Daten, einschließlich der Telemetrie-Konfigurationen, dauerhaft gelöscht.", + "Loading consent text...": "Einwilligungstext wird geladen...", + "Failed to load consent text": "Einwilligungstext konnte nicht geladen werden", + "Frequently Asked Questions": "Häufig gestellte Fragen", + "Find answers to common questions about SentryGuard": "Finden Sie Antworten auf häufige Fragen zu SentryGuard", + "General Questions": "Allgemeine Fragen", + "What is SentryGuard?": "Was ist SentryGuard?", + "SentryGuard is a non-profit, open-source service that monitors your Tesla vehicle's Sentry Mode status in real-time and sends instant alerts via Telegram when suspicious activity is detected. It uses Tesla's official API and telemetry to provide efficient monitoring without draining your battery.": "SentryGuard ist ein gemeinnütziger Open-Source-Dienst, der den Sentry Mode-Status Ihres Tesla-Fahrzeugs in Echtzeit überwacht und sofortige Benachrichtigungen über Telegram sendet, wenn verdächtige Aktivitäten erkannt werden. Er nutzt die offizielle API von Tesla sowie Telemetrie, um eine effiziente Überwachung zu bieten, ohne Ihren Akku zu belasten.", + "Is SentryGuard free?": "Ist SentryGuard kostenlos?", + "Yes, SentryGuard is completely free to use. However, it depends on donations to cover server and development costs. If donations no longer cover expenses, the service may need to adapt, but we strive to keep it free and open-source for the community.": "Ja, die Nutzung von SentryGuard ist völlig kostenlos. Es ist jedoch auf Spenden angewiesen, um die Server- und Entwicklungskosten zu decken. Wenn die Spenden die Kosten nicht mehr decken, muss sich der Dienst möglicherweise anpassen, aber wir bemühen uns, ihn für die Community kostenlos und quelloffen zu halten.", + "Is SentryGuard affiliated with Tesla?": "Ist SentryGuard mit Tesla verbunden?", + "No, SentryGuard is not affiliated with Tesla, Inc. It is an independent, community-driven project. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Nein, SentryGuard ist nicht mit Tesla, Inc. verbunden. Es handelt sich um ein unabhängiges, von der Community getragenes Projekt. Tesla und das Tesla-Logo sind Marken von Tesla, Inc.", + "How does SentryGuard work?": "Wie funktioniert SentryGuard?", + "SentryGuard uses Tesla's official Fleet API to monitor your vehicle's Sentry Mode status via telemetry. When Sentry Mode is triggered, you receive instant notifications through Telegram. The monitoring is battery-efficient as it uses telemetry data rather than constantly polling your vehicle.": "SentryGuard nutzt die offizielle Fleet API von Tesla, um den Sentry Mode-Status Ihres Fahrzeugs per Telemetrie zu überwachen. Wenn der Sentry Mode ausgelöst wird, erhalten Sie sofortige Benachrichtigungen über Telegram. Die Überwachung ist akkuschonend, da sie Telemetriedaten verwendet, anstatt Ihr Fahrzeug ständig abzufragen.", + "Setup & Configuration": "Einrichtung und Konfiguration", + "How do I get started with SentryGuard?": "Wie fange ich mit SentryGuard an?", + "To get started, click \"Login with Tesla\" on the homepage. You'll be redirected to Tesla's official authentication page. After logging in and granting permissions, you'll need to accept the consent form, then configure Telegram alerts and enable telemetry for your vehicles.": "Klicken Sie zunächst auf der Startseite auf \"Mit Tesla anmelden\". Sie werden zur offiziellen Authentifizierungsseite von Tesla weitergeleitet. Nachdem Sie sich angemeldet und die Berechtigungen erteilt haben, müssen Sie das Einwilligungsformular akzeptieren, anschließend die Telegram-Benachrichtigungen konfigurieren und die Telemetrie für Ihre Fahrzeuge aktivieren.", + "What permissions does SentryGuard need?": "Welche Berechtigungen benötigt SentryGuard?", + "SentryGuard requires access to your vehicle's telemetry data to monitor Sentry Mode status. It does not access location data, battery details, or remote commands beyond what is necessary for monitoring Sentry Mode events.": "SentryGuard benötigt Zugriff auf die Telemetriedaten Ihres Fahrzeugs, um den Sentry Mode-Status zu überwachen. Es greift nicht auf Standortdaten, Akkudetails oder Fernbefehle zu, die über das für die Überwachung von Sentry Mode-Ereignissen Notwendige hinausgehen.", + "How do I link my Telegram account?": "Wie verknüpfe ich mein Telegram-Konto?", + "Go to the Telegram Configuration page in your dashboard, click \"Generate Telegram Link\", and open the link in Telegram. The bot will automatically link your account. The link expires in 15 minutes for security.": "Gehen Sie in Ihrem Dashboard zur Seite Telegram-Konfiguration, klicken Sie auf \"Telegram-Link generieren\" und öffnen Sie den Link in Telegram. Der Bot verknüpft Ihr Konto automatisch. Der Link läuft aus Sicherheitsgründen nach 15 Minuten ab.", + "What if I can't enable telemetry for my vehicle?": "Was, wenn ich die Telemetrie für mein Fahrzeug nicht aktivieren kann?", + "Some vehicles may not support telemetry due to hardware limitations (pre-2018 Model S/X) or firmware versions. Make sure your vehicle has a virtual key paired and is running a supported firmware version. If issues persist, check the error message for specific details.": "Einige Fahrzeuge unterstützen die Telemetrie aufgrund von Hardware-Einschränkungen (Model S/X vor 2018) oder Firmware-Versionen möglicherweise nicht. Stellen Sie sicher, dass Ihr Fahrzeug einen gekoppelten virtuellen Schlüssel hat und eine unterstützte Firmware-Version verwendet. Wenn die Probleme weiterhin bestehen, überprüfen Sie die Fehlermeldung für spezifische Details.", + "Security & Privacy": "Sicherheit und Datenschutz", + "Is my data secure?": "Sind meine Daten sicher?", + "Yes, SentryGuard uses Tesla's official API with end-to-end encryption. Your data is stored securely and only used to provide monitoring and alert services. We only access the minimal data necessary for Sentry Mode monitoring.": "Ja, SentryGuard nutzt die offizielle API von Tesla mit Ende-zu-Ende-Verschlüsselung. Ihre Daten werden sicher gespeichert und ausschließlich zur Bereitstellung von Überwachungs- und Benachrichtigungsdiensten verwendet. Wir greifen nur auf die für die Sentry Mode-Überwachung minimal erforderlichen Daten zu.", + "What data does SentryGuard collect?": "Welche Daten erfasst SentryGuard?", + "SentryGuard only collects: profile information (account identifier, display name or email), minimal vehicle information (VIN, Sentry Mode status, event metadata). We do not access location data, detailed driving data, battery information, or remote commands beyond what is necessary for Sentry Mode monitoring.": "SentryGuard erfasst nur: Profilinformationen (Kontokennung, Anzeigename oder E-Mail), minimale Fahrzeuginformationen (VIN, Sentry Mode-Status, Ereignis-Metadaten). Wir greifen nicht auf Standortdaten, detaillierte Fahrdaten, Akkuinformationen oder Fernbefehle zu, die über das für die Sentry Mode-Überwachung Notwendige hinausgehen.", + "Can I delete my data?": "Kann ich meine Daten löschen?", + "Yes, you can unlink your Telegram account and revoke your consent at any time. This will remove all associated data. You can also contact us at hello@sentryguard.org to request data deletion.": "Ja, Sie können die Verknüpfung Ihres Telegram-Kontos aufheben und Ihre Einwilligung jederzeit widerrufen. Dadurch werden alle zugehörigen Daten entfernt. Sie können uns auch unter hello@sentryguard.org kontaktieren, um die Löschung Ihrer Daten zu beantragen.", + "Where is my data stored?": "Wo werden meine Daten gespeichert?", + "Your data is stored on secure servers with encryption in transit and at rest. We maintain administrative, technical, and physical safeguards to protect your personal data.": "Ihre Daten werden auf sicheren Servern mit Verschlüsselung während der Übertragung und im Ruhezustand gespeichert. Wir unterhalten administrative, technische und physische Schutzmaßnahmen, um Ihre personenbezogenen Daten zu schützen.", + "Troubleshooting": "Fehlerbehebung", + "I'm not receiving Telegram alerts. What should I do?": "Ich erhalte keine Telegram-Benachrichtigungen. Was soll ich tun?", + "First, verify that your Telegram account is linked correctly. Send a test message from the Telegram Configuration page. Make sure telemetry is enabled for your vehicle and that Sentry Mode is active on your Tesla. Check that you haven't blocked the Telegram bot.": "Überprüfen Sie zunächst, ob Ihr Telegram-Konto korrekt verknüpft ist. Senden Sie eine Testnachricht von der Seite Telegram-Konfiguration. Stellen Sie sicher, dass die Telemetrie für Ihr Fahrzeug aktiviert ist und dass der Sentry Mode auf Ihrem Tesla aktiv ist. Überprüfen Sie, ob Sie den Telegram-Bot nicht blockiert haben.", + "Why did my Tesla authorization get revoked?": "Warum wurde meine Tesla-Autorisierung widerrufen?", + "Tesla authorization can be revoked if you remove SentryGuard from your Tesla account, change your Tesla password, or if Tesla security policies require re-authorization. Simply log in again to restore access.": "Die Tesla-Autorisierung kann widerrufen werden, wenn Sie SentryGuard aus Ihrem Tesla-Konto entfernen, Ihr Tesla-Passwort ändern oder wenn Tesla-Sicherheitsrichtlinien eine erneute Autorisierung erfordern. Melden Sie sich einfach erneut an, um den Zugriff wiederherzustellen.", + "SentryGuard shows \"Virtual Key Not Paired\". What does this mean?": "SentryGuard zeigt \"Virtueller Schlüssel nicht gekoppelt\" an. Was bedeutet das?", + "You need to pair a virtual key with your vehicle to use SentryGuard. This is done through the Tesla app. Go to Security & Drivers in your Tesla app and add SentryGuard as a key. Then return to SentryGuard and refresh your vehicles.": "Sie müssen einen virtuellen Schlüssel mit Ihrem Fahrzeug koppeln, um SentryGuard zu nutzen. Dies erfolgt über die Tesla-App. Gehen Sie in Ihrer Tesla-App zu Sicherheit und Fahrer und fügen Sie SentryGuard als Schlüssel hinzu. Kehren Sie anschließend zu SentryGuard zurück und aktualisieren Sie Ihre Fahrzeuge.", + "Can I use SentryGuard with multiple vehicles?": "Kann ich SentryGuard mit mehreren Fahrzeugen nutzen?", + "Yes, SentryGuard supports multiple vehicles. Each vehicle can be configured independently. Go to the Vehicles page to manage telemetry for each vehicle.": "Ja, SentryGuard unterstützt mehrere Fahrzeuge. Jedes Fahrzeug kann unabhängig konfiguriert werden. Gehen Sie zur Fahrzeugseite, um die Telemetrie für jedes Fahrzeug zu verwalten.", + "Support & Donations": "Support und Spenden", + "How can I support SentryGuard?": "Wie kann ich SentryGuard unterstützen?", + "You can support SentryGuard by making a donation through the Buy Me a Coffee widget on the website. Your support helps cover server costs and keeps the service free for everyone. You can also contribute to the project on GitHub.": "Sie können SentryGuard unterstützen, indem Sie über das Buy Me a Coffee-Widget auf der Website spenden. Ihre Unterstützung hilft, die Serverkosten zu decken, und hält den Dienst für alle kostenlos. Sie können auch über GitHub zum Projekt beitragen.", + "How can I report a bug or request a feature?": "Wie kann ich einen Fehler melden oder eine Funktion vorschlagen?", + "You can report bugs or request features by opening an issue on our GitHub repository at https://github.com/abarghoud/SentryGuard. We welcome community contributions!": "Sie können Fehler melden oder Funktionen vorschlagen, indem Sie ein Issue in unserem GitHub-Repository unter https://github.com/abarghoud/SentryGuard eröffnen. Wir freuen uns über Beiträge aus der Community!", + "Who can I contact for support?": "An wen kann ich mich für Support wenden?", + "For support, you can contact us at hello@sentryguard.org or open an issue on GitHub. We do our best to respond to all inquiries.": "Für Support können Sie uns unter hello@sentryguard.org kontaktieren oder ein Issue auf GitHub eröffnen. Wir geben unser Bestes, um alle Anfragen zu beantworten.", + "Still have questions?": "Haben Sie noch Fragen?", + "Can't find the answer you're looking for? Please feel free to contact us.": "Sie finden die gesuchte Antwort nicht? Kontaktieren Sie uns gerne.", + "Contact Support": "Support kontaktieren", + "FAQ": "FAQ", + "Does Sentry Mode need to be activated to receive notifications?": "Muss der Sentry Mode aktiviert sein, um Benachrichtigungen zu erhalten?", + "Why Telegram?": "Warum Telegram?", + "Does SentryGuard impact the vehicle's battery or range?": "Beeinträchtigt SentryGuard den Akku oder die Reichweite des Fahrzeugs?", + "What is SentryGuard description": "SentryGuard ist ein gemeinnütziger Open-Source-Dienst, der den Sentry Mode-Status Ihres Tesla-Fahrzeugs in Echtzeit überwacht und sofortige Benachrichtigungen über Telegram sendet, wenn verdächtige Aktivitäten erkannt werden. Er nutzt die offizielle API von Tesla sowie Telemetrie, um eine effiziente Überwachung zu bieten, ohne Ihren Akku zu belasten.", + "SentryGuard requires active Sentry Mode": "Zum Erkennen von Kratzern, Dellen und Bewegungen in der Nähe ja, dafür muss der Sentry Mode aktiv sein. SentryGuard verfügt jedoch zusätzlich über ein Einbruchserkennungssystem, das selbst dann funktioniert, wenn der Sentry Mode vollständig deaktiviert ist.", + "Does SentryGuard protect my car when Sentry Mode is OFF?": "Schützt SentryGuard mein Auto, wenn der Sentry Mode AUS ist?", + "Break-in detection explanation": "Ja! Selbst wenn Sie den Sentry Mode ausschalten, um Akku zu sparen, überwacht SentryGuard die Telemetrie Ihres Fahrzeugs kontinuierlich. Wenn jemand versucht, an Ihrem Türgriff zu ziehen, erhalten Sie eine sofortige Telegram-Benachrichtigung.", + "Can SentryGuard turn on Sentry Mode automatically during a break-in?": "Kann SentryGuard den Sentry Mode bei einem Einbruchsversuch automatisch aktivieren?", + "Auto Sentry Mode explanation": "Ja! Wenn der automatische Sentry Mode in den Einstellungen Ihres Fahrzeugs aktiviert ist, schaltet SentryGuard den Sentry Mode automatisch ein, sobald ein Einbruchsversuch erkannt wird — so beginnen die Kameras mit der Aufzeichnung, selbst wenn der Sentry Mode ausgeschaltet war. Dies erfordert die Autorisierung vehicle_cmds (dieselbe wie für die Hupe).", + "Why we chose Telegram": "Telegram bietet eine leistungsstarke und sichere Bot-API, mit der wir sofortige Push-Benachrichtigungen in Echtzeit zustellen können. Sie ist unglaublich schnell, zuverlässig und völlig kostenlos.", + "Is there a SentryGuard mobile app?": "Gibt es eine mobile SentryGuard-App?", + "SentryGuard mobile app explanation": "Ja! SentryGuard ist als native mobile App für iOS und Android verfügbar. Sie sendet sofortige Push-Benachrichtigungen in der Sekunde, in der der Sentry Mode ausgelöst wird, und ermöglicht es Ihnen, Ihre Fahrzeuge zu überwachen und Ihren Alarmverlauf direkt vom Handy aus einzusehen.", + "Do I need the mobile app to receive alerts?": "Brauche ich die mobile App, um Alarme zu erhalten?", + "Mobile app vs Telegram alerts": "Nein. Wenn Sie Ihre Alarme bereits über Telegram erhalten, funktioniert alles genau wie bisher. Die mobile App ergänzt lediglich native Push-Benachrichtigungen als zusätzlichen Kanal sowie schnellen Zugriff auf Ihr Dashboard von unterwegs.", + "How do I get the SentryGuard mobile app?": "Wie erhalte ich die mobile SentryGuard-App?", + "How to get the mobile app": "Sie können SentryGuard im App Store für iOS oder bei Google Play für Android herunterladen. Rufen Sie den <0>Download-Bereich auf unserer Startseite auf, um die App für Ihr Gerät zu laden.", + "Is SentryGuard free description": "Ja, die Nutzung von SentryGuard ist völlig kostenlos. Es ist jedoch auf Spenden angewiesen, um die Server- und Entwicklungskosten zu decken. Wenn die Spenden die Kosten nicht mehr decken, muss sich der Dienst möglicherweise anpassen, aber wir bemühen uns, ihn für die Community kostenlos und quelloffen zu halten.", + "Is SentryGuard affiliated with Tesla description": "Nein, SentryGuard ist nicht mit Tesla, Inc. verbunden. Es handelt sich um ein unabhängiges, von der Community getragenes Projekt. Tesla und das Tesla-Logo sind Marken von Tesla, Inc.", + "How does SentryGuard work description": "SentryGuard nutzt die offizielle Fleet API von Tesla, um den Sentry Mode-Status Ihres Fahrzeugs per Telemetrie zu überwachen. Wenn der Sentry Mode ausgelöst wird, erhalten Sie sofortige Benachrichtigungen über Telegram. Die Überwachung ist akkuschonend, da sie Telemetriedaten verwendet, anstatt Ihr Fahrzeug ständig abzufragen.", + "How to get started with SentryGuard": "Klicken Sie zunächst auf der Startseite auf \"Mit Tesla anmelden\". Sie werden zur offiziellen Authentifizierungsseite von Tesla weitergeleitet. Nachdem Sie sich angemeldet und die Berechtigungen erteilt haben, müssen Sie das Einwilligungsformular akzeptieren. Koppeln Sie anschließend auf der <0>Fahrzeugseite einen virtuellen Schlüssel mit Ihrem Fahrzeug (dies leitet Sie zur Website von Tesla weiter, um die Bestätigung über die Tesla-App vorzunehmen), <1>konfigurieren Sie die Telegram-Benachrichtigungen und aktivieren Sie die Telemetrie für Ihre Fahrzeuge.", + "What permissions SentryGuard needs": "SentryGuard benötigt Zugriff auf die Telemetriedaten Ihres Fahrzeugs, um den Sentry Mode-Status zu überwachen. Es greift nicht auf Standortdaten, Akkudetails oder Fernbefehle zu, die über das für die Überwachung von Sentry Mode-Ereignissen Notwendige hinausgehen.", + "How to link Telegram account": "Gehen Sie in Ihrem Dashboard zur <0>Seite Telegram-Konfiguration, klicken Sie auf \"Telegram-Link generieren\" und öffnen Sie den Link in Telegram. Der Bot verknüpft Ihr Konto automatisch. Der Link läuft aus Sicherheitsgründen nach 15 Minuten ab.", + "Cannot enable telemetry help": "Einige Fahrzeuge unterstützen die Telemetrie aufgrund von Hardware-Einschränkungen (Model S/X vor 2018) oder Firmware-Versionen möglicherweise nicht. Stellen Sie sicher, dass Ihr Fahrzeug einen gekoppelten virtuellen Schlüssel hat und eine unterstützte Firmware-Version verwendet. Wenn die Probleme weiterhin bestehen, überprüfen Sie die Fehlermeldung für spezifische Details.", + "Is my data secure answer": "Ja, SentryGuard nutzt die offizielle API von Tesla mit Ende-zu-Ende-Verschlüsselung. Ihre Daten werden sicher gespeichert und ausschließlich zur Bereitstellung von Überwachungs- und Benachrichtigungsdiensten verwendet. Wir greifen nur auf die für die Sentry Mode-Überwachung minimal erforderlichen Daten zu.", + "What data SentryGuard collects": "SentryGuard erfasst nur: Profilinformationen (Kontokennung, Anzeigename oder E-Mail), minimale Fahrzeuginformationen (VIN, Sentry Mode-Status, Ereignis-Metadaten). Wir greifen nicht auf Standortdaten, detaillierte Fahrdaten, Akkuinformationen oder Fernbefehle zu, die über das für die Sentry Mode-Überwachung Notwendige hinausgehen.", + "Can I delete my data answer": "Ja, Sie können die Verknüpfung Ihres Telegram-Kontos aufheben und Ihre Einwilligung jederzeit widerrufen. Dadurch werden alle zugehörigen Daten entfernt. Die Funktion zur Datenlöschung befindet sich derzeit in Entwicklung. Bitte kontaktieren Sie uns vorerst unter <0>hello@sentryguard.org, um die Löschung Ihrer Daten zu beantragen.", + "Where is my data stored answer": "Ihre Daten werden auf sicheren Servern in Europa gespeichert, mit Verschlüsselung während der Übertragung und im Ruhezustand. Wir unterhalten administrative, technische und physische Schutzmaßnahmen, um Ihre personenbezogenen Daten zu schützen.", + "Not receiving alerts help": "Überprüfen Sie zunächst, ob Ihr Telegram-Konto korrekt verknüpft ist. Senden Sie eine Testnachricht von der <0>Seite Telegram-Konfiguration. Stellen Sie sicher, dass die Telemetrie für Ihr Fahrzeug aktiviert ist und dass der Sentry Mode auf Ihrem Tesla aktiv ist. Überprüfen Sie auch die <1>Fahrzeugkonfiguration, um die Telemetrie zu aktivieren und den virtuellen Schlüssel einzurichten. Überprüfen Sie schließlich, ob Sie den Telegram-Bot nicht blockiert haben.", + "SentryGuard battery impact": "Nein, SentryGuard hat keinen Einfluss auf den Akku oder die Reichweite Ihres Fahrzeugs. Der Dienst nutzt das Telemetriesystem von Tesla, das auf höchste Effizienz ausgelegt ist. Im Gegensatz zu Drittanbieter-Apps, die Ihr Fahrzeug möglicherweise ständig abfragen, empfängt SentryGuard nur dann Daten, wenn Ereignisse auftreten, und verwendet dabei minimale Bandbreite und keine zusätzliche Akkuleistung Ihres Fahrzeugs.", + "Tesla authorization revoked help": "Die Tesla-Autorisierung kann widerrufen werden, wenn Sie SentryGuard aus Ihrem Tesla-Konto entfernen, Ihr Tesla-Passwort ändern oder wenn Tesla-Sicherheitsrichtlinien eine erneute Autorisierung erfordern. Melden Sie sich einfach erneut an, um den Zugriff wiederherzustellen.", + "Virtual key not paired help": "Sie müssen einen virtuellen Schlüssel mit Ihrem Fahrzeug koppeln, um SentryGuard zu nutzen. Klicken Sie auf der <0>Fahrzeugseite auf die Schaltfläche \"Virtuellen Schlüssel koppeln\", die Sie zur Website von Tesla weiterleitet. Dadurch wird Ihre Tesla-App geöffnet, in der Sie die Anfrage für den virtuellen Schlüssel bestätigen können. Sobald die Bestätigung erfolgt ist, kehren Sie zu SentryGuard zurück und aktualisieren Sie Ihre Fahrzeuge.", + "Multiple vehicles support": "Ja, SentryGuard unterstützt mehrere Fahrzeuge. Jedes Fahrzeug kann unabhängig konfiguriert werden. Gehen Sie zur Fahrzeugseite, um die Telemetrie für jedes Fahrzeug zu verwalten.", + "How to support SentryGuard": "Sie können SentryGuard unterstützen, indem Sie über das Buy Me a Coffee-Widget auf der Website spenden, oder direkt unter <1>https://buymeacoffee.com/sentryguardorg. Ihre Unterstützung hilft, die Serverkosten zu decken, und hält den Dienst für alle kostenlos. Sie können auch über <0>GitHub zum Projekt beitragen, indem Sie dem Repository einen Stern geben, Probleme melden oder Pull Requests einreichen.", + "How to report bugs or request features": "Sie können Fehler melden oder Funktionen vorschlagen, indem Sie ein Issue in unserem <0>GitHub-Repository eröffnen oder uns über den Support-Chat auf der Website kontaktieren. Wir freuen uns über Beiträge aus der Community!", + "Who to contact for support": "Für Support können Sie uns unter <0>hello@sentryguard.org kontaktieren, ein Issue auf <1>GitHub eröffnen oder den Support-Chat auf der Website nutzen. Wir geben unser Bestes, um alle Anfragen zu beantworten.", + "Does SentryGuard provide video footage?": "Stellt SentryGuard Videoaufnahmen bereit?", + "SentryGuard video access explanation": "SentryGuard hat keinen Zugriff auf die Videoaufnahmen der Kameras Ihres Fahrzeugs. Wenn Sie jedoch eine Sentry Mode-Benachrichtigung über Telegram erhalten, können Sie in der Nachricht auf die Schaltfläche \"Prüfen\" klicken, um die Tesla-App direkt zu öffnen und den Live-Kamerastream anzusehen, um zu überprüfen, was die Benachrichtigung ausgelöst hat.", + "Do I need Tesla Premium Connectivity to use SentryGuard?": "Benötige ich Tesla Premium-Konnektivität, um SentryGuard zu nutzen?", + "Tesla Premium Connectivity requirement": "Nein, Sie benötigen keine Tesla Premium-Konnektivität, um SentryGuard zu nutzen. Der Dienst funktioniert mit der Standardkonnektivität von Tesla und nutzt die Fleet API für Telemetriedaten. Die Premium-Konnektivität kann jedoch für einige erweiterte Tesla-Funktionen erforderlich sein, aber SentryGuard selbst funktioniert mit der Basiskonnektivität des Fahrzeugs.", + "Why doesn't Sentry Mode trigger when I test it myself?": "Warum wird der Sentry Mode nicht ausgelöst, wenn ich ihn selbst teste?", + "Sentry Mode testing explanation": "Wenn Sie den Sentry Mode selbst mit Ihrem Telefon in der Nähe testen, erkennt Tesla Ihren digitalen Schlüssel und löst den Sentry Mode nicht aus, da es einen autorisierten Benutzer erkennt. Der Sentry Mode wird nur aktiviert, wenn das Fahrzeug eine potenziell unbefugte Aktivität wahrnimmt. Um ihn korrekt zu testen, verwenden Sie entweder das Telefon einer anderen Person, um eine Bewegungs-/Kameraerkennung auszulösen, oder testen Sie aus größerer Entfernung, ohne dass Ihr Telefon anwesend ist.", + "Why is SentryGuard faster than Tesla notifications?": "Warum ist SentryGuard schneller als die Tesla-Benachrichtigungen?", + "SentryGuard speed advantage explanation": "SentryGuard liefert sofortige Benachrichtigungen, sobald Tesla ein Ereignis erkennt und mit der Aufzeichnung beginnt, sodass Sie umgehend über mögliche Sicherheitsvorfälle informiert sind. Im Gegensatz dazu zeigt die Tesla-App das aufgezeichnete Video erst nach Abschluss der Aufnahme an, und selbst die direkten Benachrichtigungen von Tesla treffen mehrere Sekunden später ein. Dieser Geschwindigkeitsvorteil kann entscheidend sein, um schnell auf Sicherheitsbedrohungen zu reagieren.", + "Does SentryGuard support older Model S/X vehicles?": "Unterstützt SentryGuard ältere Model S/X-Fahrzeuge?", + "Legacy vehicles support explanation": "Ja! Ältere Model S- und Model X-Fahrzeuge (in der Regel vor 2021 gebaut) mit dem Infotainmentsystem MCU1 oder MCU2 werden von SentryGuard vollständig unterstützt. Anders als bei neueren Modellen unterstützen und benötigen diese Fahrzeuge keinen gekoppelten virtuellen Schlüssel, damit die Telemetrie funktioniert. Sie können die Telemetrie einfach direkt aktivieren, ohne den Kopplungsschritt.", + "Settings": "Einstellungen", + "Manage your account settings and preferences": "Verwalten Sie Ihre Kontoeinstellungen und Präferenzen", + "Account Information": "Kontoinformationen", + "Name": "Name", + "Email": "E-Mail", + "Danger Zone": "Gefahrenzone", + "Delete Account": "Konto löschen", + "Delete account description": "Das Löschen Ihres Kontos ist dauerhaft und unwiderruflich. Alle Ihre Daten, einschließlich Telemetrie-Konfigurationen, Telegram-Benachrichtigungen und Fahrzeuginformationen, werden dauerhaft gelöscht.", + "Delete account confirmation": "Möchten Sie Ihr Konto wirklich löschen? Diese Aktion ist dauerhaft und löscht alle Ihre Daten, einschließlich Telemetrie-Konfigurationen und Telegram-Benachrichtigungen. Diese Aktion kann nicht rückgängig gemacht werden.", + "Back to Dashboard": "Zurück zum Dashboard", + "You're on the Waitlist!": "Sie stehen auf der Warteliste!", + "Thank you for your interest in SentryGuard": "Vielen Dank für Ihr Interesse an SentryGuard", + "We have received your registration for": "Wir haben Ihre Registrierung erhalten für", + "Your account is pending approval. We'll send you an email once your account has been approved and you can start using SentryGuard.": "Ihr Konto wartet auf die Freigabe. Wir senden Ihnen eine E-Mail, sobald Ihr Konto freigegeben wurde und Sie SentryGuard nutzen können.", + "Approval is typically processed within 24-48 hours.": "Die Freigabe wird in der Regel innerhalb von 24-48 Stunden bearbeitet.", + "No email within 72 hours? Check your spam or promotions folder.": "Keine E-Mail innerhalb von 72 Stunden? Überprüfen Sie Ihren Spam- oder Werbeordner.", + "Back to home": "Zurück zur Startseite", + "Join our Discord community while you wait": "Treten Sie unserer Discord-Community bei, während Sie warten!", + "Join Discord": "Discord beitreten", + "Waitlist": "Warteliste", + "Why is there a waitlist?": "Warum gibt es eine Warteliste?", + "Why is there a waitlist answer": "SentryGuard verwaltet den Zugang über eine Warteliste, um sicherzustellen, dass der Dienst für alle Nutzer stabil und zuverlässig bleibt. Während wir weiter wachsen, hilft uns die Warteliste, neue Nutzer reibungslos einzubinden.", + "How long does waitlist approval take?": "Wie lange dauert die Freigabe von der Warteliste?", + "How long does waitlist approval take answer": "Kontofreigaben werden in der Regel innerhalb von 24 bis 48 Stunden bearbeitet. Sie erhalten eine Willkommens-E-Mail, sobald Ihr Konto freigegeben wurde.", + "What happens after I'm approved?": "Was passiert, nachdem ich freigegeben wurde?", + "What happens after I'm approved answer": "Sobald Sie freigegeben sind, erhalten Sie eine Willkommens-E-Mail mit einer Schritt-für-Schritt-Anleitung für den Einstieg. Sie erhalten Zugriff auf Ihr Dashboard, in dem Sie die Telegram-Benachrichtigungen konfigurieren, einen virtuellen Schlüssel mit Ihrem Fahrzeug koppeln und die Telemetrieüberwachung aktivieren können.", + "I signed up but didn't receive an approval email": "Ich habe mich registriert, aber keine Freigabe-E-Mail erhalten. Was soll ich tun?", + "I signed up but didn't receive an approval email answer": "Überprüfen Sie zunächst Ihre Spam- und Werbeordner. Die Willkommens-E-Mail wird automatisch gesendet, sobald Ihr Konto freigegeben wurde. Wenn Sie Fragen zu Ihrem Status haben, kontaktieren Sie uns bitte unter hello@sentryguard.org mit Ihrer E-Mail-Adresse.", + "Can I check my waitlist status?": "Kann ich meinen Wartelistenstatus überprüfen?", + "Can I check my waitlist status answer": "Sie können Ihren Status überprüfen, indem Sie versuchen, sich anzumelden. Wenn Sie zur Wartelisten-Seite weitergeleitet werden, wartet Ihr Konto noch auf die Freigabe. Sobald es freigegeben ist, können Sie sich normal bei Ihrem Dashboard anmelden.", + "Can I use SentryGuard while on the waitlist?": "Kann ich SentryGuard nutzen, während ich auf der Warteliste stehe?", + "Can I use SentryGuard while on the waitlist answer": "Nein, Sie müssen auf die Freigabe warten, um auf das Dashboard zuzugreifen und die Funktionen von SentryGuard zu nutzen. Während der Wartezeit empfehlen wir Ihnen, unsere FAQ und Dokumentation zu erkunden, um sich auf die Freigabe Ihres Kontos vorzubereiten.", + "What if I try to log in before being approved?": "Was passiert, wenn ich versuche, mich vor der Freigabe anzumelden?", + "What if I try to log in before being approved answer": "Sie werden zur Wartelisten-Seite weitergeleitet, auf der Sie Ihre E-Mail-Adresse sehen können. Sie bleiben auf der Warteliste, bis wir Ihr Konto freigeben, woraufhin Sie sich normal anmelden können.", + "Link Your Telegram Account": "Verknüpfen Sie Ihr Telegram-Konto", + "You will receive instant alerts when suspicious activity is detected": "Sie erhalten sofortige Benachrichtigungen, wenn verdächtige Aktivitäten erkannt werden", + "💡 You are about to open Telegram. Once you've linked your account, return to SentryGuard to continue.": "💡 Sie sind dabei, Telegram zu öffnen. Sobald Sie Ihr Konto verknüpft haben, kehren Sie zu SentryGuard zurück, um fortzufahren.", + "How it works:": "So funktioniert es:", + "Click \"Generate Telegram Link\"": "Klicken Sie auf \"Telegram-Link generieren\"", + "Click the link to open Telegram": "Klicken Sie auf den Link, um Telegram zu öffnen", + "The bot will automatically link your account": "Der Bot verknüpft Ihr Konto automatisch", + "Return here and continue": "Kehren Sie hierher zurück und fahren Sie fort", + "Set Up Virtual Key": "Virtuellen Schlüssel einrichten", + "Pair a virtual key with your vehicle in the Tesla app": "Koppeln Sie einen virtuellen Schlüssel mit Ihrem Fahrzeug in der Tesla-App", + "🔐 This action happens entirely in the Tesla app. Once finished, return to SentryGuard to continue.": "🔐 Dieser Vorgang findet vollständig in der Tesla-App statt. Sobald Sie fertig sind, kehren Sie zu SentryGuard zurück, um fortzufahren.", + "How to pair a virtual key:": "So koppeln Sie einen virtuellen Schlüssel:", + "Click \"Open Tesla App\" button below": "Klicken Sie unten auf die Schaltfläche \"Tesla-App öffnen\"", + "The Tesla app will open and show a confirmation dialog": "Die Tesla-App wird geöffnet und zeigt ein Bestätigungsdialogfeld an", + "Approve the virtual key request in the Tesla app": "Bestätigen Sie die Anfrage für den virtuellen Schlüssel in der Tesla-App", + "Return to SentryGuard to continue setup": "Kehren Sie zu SentryGuard zurück, um die Einrichtung fortzusetzen", + "Open Tesla App": "Tesla-App öffnen", + "I've opened the Tesla app": "Ich habe die Tesla-App geöffnet", + "I've linked my Telegram": "Ich habe mein Telegram verknüpft", + "⏱️ Once you've opened the Tesla app and approved the virtual key, click the button above to continue.": "⏱️ Sobald Sie die Tesla-App geöffnet und den virtuellen Schlüssel bestätigt haben, klicken Sie auf die Schaltfläche oben, um fortzufahren.", + "Confirm Virtual Key Setup": "Einrichtung des virtuellen Schlüssels bestätigen", + "Verify that the virtual key was paired successfully": "Überprüfen Sie, ob der virtuelle Schlüssel erfolgreich gekoppelt wurde", + "✅ Virtual key detected!": "✅ Virtueller Schlüssel erkannt!", + "⏳ Waiting for you to complete the virtual key setup in the Tesla app...": "⏳ Warten darauf, dass Sie die Einrichtung des virtuellen Schlüssels in der Tesla-App abschließen...", + "No virtual key was detected. Please complete the setup in the Tesla app and try again.": "Es wurde kein virtueller Schlüssel erkannt. Bitte schließen Sie die Einrichtung in der Tesla-App ab und versuchen Sie es erneut.", + "Failed to check virtual key status. Please try again.": "Der Status des virtuellen Schlüssels konnte nicht überprüft werden. Bitte versuchen Sie es erneut.", + "What to expect:": "Was Sie erwartet:", + "You approved the virtual key in the Tesla app": "Sie haben den virtuellen Schlüssel in der Tesla-App bestätigt", + "The key is now paired with your vehicle account": "Der Schlüssel ist nun mit Ihrem Fahrzeugkonto gekoppelt", + "You can now enable telemetry monitoring": "Sie können jetzt die Telemetrieüberwachung aktivieren", + "I've completed the Tesla app setup": "Ich habe die Einrichtung in der Tesla-App abgeschlossen", + "Checking...": "Wird überprüft...", + "The button will check your vehicle for the paired virtual key": "Die Schaltfläche überprüft Ihr Fahrzeug auf den gekoppelten virtuellen Schlüssel", + "Continue to Next Step": "Weiter zum nächsten Schritt", + "Start monitoring your vehicle's Sentry Mode in real-time": "Beginnen Sie, den Sentry Mode Ihres Fahrzeugs in Echtzeit zu überwachen", + "No vehicles found. Please refresh or check your Tesla account.": "Keine Fahrzeuge gefunden. Bitte aktualisieren Sie oder überprüfen Sie Ihr Tesla-Konto.", + "📡 Telemetry monitoring is battery-efficient and uses Tesla's official API. You can enable it for one or more vehicles. You'll receive alerts via Telegram for each enabled vehicle.": "📡 Die Telemetrieüberwachung ist akkuschonend und nutzt die offizielle API von Tesla. Sie können sie für ein oder mehrere Fahrzeuge aktivieren. Sie erhalten für jedes aktivierte Fahrzeug Benachrichtigungen über Telegram.", + "Complete Onboarding": "Onboarding abschließen", + "Enable telemetry for at least one vehicle to complete setup": "Aktivieren Sie die Telemetrie für mindestens ein Fahrzeug, um die Einrichtung abzuschließen", + "Setup Wizard": "Einrichtungsassistent", + "Setup Complete!": "Einrichtung abgeschlossen!", + "Your SentryGuard is now fully configured. You will receive instant Telegram alerts when suspicious activity is detected.": "Ihr SentryGuard ist jetzt vollständig konfiguriert. Sie erhalten sofortige Telegram-Benachrichtigungen, wenn verdächtige Aktivitäten erkannt werden.", + "Go to Dashboard": "Zum Dashboard", + "Skip for now": "Vorerst überspringen", + "Skipping...": "Wird übersprungen...", + "Completing...": "Wird abgeschlossen...", + "Activating...": "Wird aktiviert...", + "Activate Telemetry": "Telemetrie aktivieren", + "✅ Telemetry enabled! Your setup is complete.": "✅ Telemetrie aktiviert! Ihre Einrichtung ist abgeschlossen.", + "You will now receive instant Telegram alerts when suspicious activity is detected.": "Sie erhalten ab jetzt sofortige Telegram-Benachrichtigungen, wenn verdächtige Aktivitäten erkannt werden.", + "What is the purpose of pairing a virtual key with SentryGuard?": "Wozu dient das Koppeln eines virtuellen Schlüssels mit SentryGuard?", + "Virtual key purpose explanation": "Der mit Ihrem Fahrzeug gekoppelte virtuelle Schlüssel ist die sichere Kennung von SentryGuard. Er ermöglicht Ihrem Tesla zu überprüfen, dass Telemetrie-Konfigurationsnachrichten tatsächlich von SentryGuard stammen. Dies bietet eine zusätzliche Sicherheitsebene über das Authentifizierungstoken hinaus, das bei Ihrer ersten Verbindung mit Tesla erzeugt wird. Ihr Fahrzeug überprüft sowohl, dass Sie (der Besitzer) SentryGuard Berechtigungen erteilt haben, als auch, dass es tatsächlich SentryGuard ist, das diese Berechtigungen nutzt, und kein kompromittierter oder gestohlener Zugriff.", + "Does SentryGuard work without internet connection?": "Funktioniert SentryGuard ohne Internetverbindung?", + "Internet connection requirement explanation": "Nein, für die Funktion von SentryGuard ist ein Internetzugang erforderlich. Wenn ein Sentry Mode-Ereignis auftritt, benötigt Ihr Tesla eine Internetverbindung (über WLAN oder Mobilfunk), um die Ereignisdaten an unsere Server zu senden, die dann die Benachrichtigung über Telegram an Sie weiterleiten. Befindet sich Ihr Fahrzeug an einem Ort ohne Internetzugang (z. B. in einer Tiefgarage oder in einem Land, in dem die Tesla-Konnektivität nicht verfügbar ist), können keine Benachrichtigungen gesendet werden, bis das Fahrzeug wieder mit dem Internet verbunden ist.", + "Why does the app crash when I use browser translation?": "Warum stürzt die App ab, wenn ich die Browserübersetzung verwende?", + "Browser translation issue explanation": "Die Verwendung der automatischen Übersetzungsfunktion Ihres Browsers (wie \"Diese Seite übersetzen\" in Chrome oder ähnliche Funktionen in anderen Browsern) kann dazu führen, dass die Anwendung abstürzt oder sich unerwartet verhält. SentryGuard unterstützt bereits mehrere Sprachen nativ. Verwenden Sie anstelle der Browserübersetzung bitte die Sprachauswahl in der Navigationsleiste der Anwendung, um zwischen Englisch und Französisch zu wechseln. Dies gewährleistet ein stabiles Erlebnis ohne technische Probleme.", + "meta.home.title": "SentryGuard - Schützen Sie Ihren Tesla", + "meta.home.description": "Echtzeitüberwachung und sofortige Telegram-Benachrichtigungen für den Sentry Mode Ihres Tesla-Fahrzeugs. Akkuschonend, sicher und quelloffen.", + "meta.home.ogDescription": "Echtzeitüberwachung und sofortige Telegram-Benachrichtigungen für den Sentry Mode Ihres Tesla-Fahrzeugs.", + "meta.faq.title": "FAQ - SentryGuard", + "meta.faq.description": "Häufig gestellte Fragen zu SentryGuard. Erfahren Sie, wie Sie Ihren Tesla mit Echtzeitüberwachung des Sentry Mode und Telegram-Benachrichtigungen schützen.", + "meta.faq.ogDescription": "Häufig gestellte Fragen zur Tesla-Überwachung von SentryGuard.", + "Break-in Monitoring": "Einbruchsüberwachung", + "Enable Break-in": "Einbruchsüberwachung aktivieren", + "Disable Break-in": "Einbruchsüberwachung deaktivieren", + "Failed to update Break-in monitoring": "Einbruchsüberwachung konnte nicht aktualisiert werden", + "Offensive Response": "Offensive Reaktion", + "offensiveResponseOn": "Hupe aktiviert", + "offensiveResponseOff": "Hupe deaktiviert", + "offensiveResponseInfo": "Wenn eine Benachrichtigung ausgelöst wird, hupt das Fahrzeug oder gibt für einige Sekunden ein Furzgeräusch von sich.", + "Horn": "Hupe", + "Fart": "Furz", + "offensiveResponseHonk": "Hupe bei Einbruchsbenachrichtigungen aktiviert.", + "offensiveResponseFart": "Furz (Boombox) bei Einbruchsbenachrichtigungen ausgelöst.", + "offensiveResponseDisabled": "Deaktiviert.", + "offensiveChooseDuration": "Aktivierungsdauer wählen:", + "offensiveDuration30m": "30 Min.", + "offensiveDuration1h": "1 Std.", + "offensiveDuration2h": "2 Std.", + "offensiveDuration4h": "4 Std.", + "offensiveDuration8h": "8 Std.", + "offensiveDuration24h": "24 Std.", + "offensiveProlong": "Verlängern", + "offensiveCancel": "Abbrechen", + "Failed to update offensive response": "Offensive Reaktion konnte nicht aktualisiert werden", + "Auto Sentry Mode": "Automatischer Sentry Mode", + "autoSentryModeInfo": "Sobald ein Einbruchsversuch erkannt wird, schaltet sich der Sentry Mode automatisch ein, damit die Kameras aufzeichnen.", + "Failed to update auto sentry mode": "Automatischer Sentry Mode konnte nicht aktualisiert werden", + "Never miss a door ding again.": "Verpassen Sie nie wieder einen Parkrempler.", + "Get instant Telegram alerts the second your Tesla detects a threat. Zero battery drain.": "Erhalten Sie in dem Moment eine sofortige Telegram-Benachrichtigung, in dem Ihr Tesla eine Bedrohung erkennt. Keine Akkubelastung.", + "The Tesla App is not enough.": "Die Tesla-App reicht nicht aus.", + "The official app only alerts you for direct threats like alarms. For everything else—like door dings or scratches—you're left in the dark until you check your car.": "Die offizielle App benachrichtigt Sie nur bei direkten Bedrohungen wie Alarmen. Bei allem anderen — etwa Parkremplern oder Kratzern — bleiben Sie im Dunkeln, bis Sie nach Ihrem Auto sehen.", + "Without SentryGuard": "Ohne SentryGuard", + "A shopping cart hits your car. The alarm doesn't trigger. The Tesla app stays silent. You find out too late.": "Ein Einkaufswagen rammt Ihr Auto. Der Alarm wird nicht ausgelöst. Die Tesla-App bleibt stumm. Sie erfahren es zu spät.", + "With SentryGuard": "Mit SentryGuard", + "Sentry Mode records the event. SentryGuard instantly pushes a Telegram alert to your phone. You can react immediately.": "Der Sentry Mode zeichnet das Ereignis auf. SentryGuard sendet sofort eine Telegram-Benachrichtigung auf Ihr Telefon. Sie können umgehend reagieren.", + "How it works": "So funktioniert es", + "1. Connect your Tesla": "1. Verbinden Sie Ihren Tesla", + "Securely link your vehicle using official Tesla OAuth. We never see your password.": "Verknüpfen Sie Ihr Fahrzeug sicher über das offizielle Tesla OAuth. Wir sehen Ihr Passwort niemals.", + "2. Smart Telemetry": "2. Intelligente Telemetrie", + "Our servers listen to the official telemetry stream. Zero polling means absolutely zero battery drain.": "Unsere Server empfangen den offiziellen Telemetrie-Stream. Kein Polling bedeutet absolut keine Akkubelastung.", + "3. Instant Alerts": "3. Sofortige Benachrichtigungen", + "Receive push notifications via our mobile app or Telegram bot the exact second Sentry Mode is triggered.": "Erhalten Sie Push-Benachrichtigungen über unsere mobile App oder unseren Telegram-Bot in der Sekunde, in der der Sentry Mode ausgelöst wird.", + "Support a Community Project": "Unterstützen Sie ein Community-Projekt", + "SentryGuard is a 100% free, open-source project built by Tesla owners, for Tesla owners. It is maintained entirely through community donations.": "SentryGuard ist ein zu 100 % kostenloses Open-Source-Projekt, das von Tesla-Besitzern für Tesla-Besitzer entwickelt wurde. Es wird vollständig durch Spenden der Community finanziert.", + "Zero Battery Impact": "Keine Akkubelastung", + "Protection that doesn't drain your battery.": "Schutz, der Ihren Akku nicht belastet.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard integrates deeply with Tesla's API to instantly alert you if someone pulls your door handle—even when Sentry Mode is completely disabled.": "Sie schalten den Sentry Mode zu Hause oder bei der Arbeit aus, um Reichweite zu sparen? Kein Problem. SentryGuard ist tief in die API von Tesla integriert und benachrichtigt Sie sofort, wenn jemand an Ihrem Türgriff zieht — selbst wenn der Sentry Mode vollständig deaktiviert ist.", + "Detects break-ins even with Sentry Mode OFF": "Erkennt Einbrüche selbst bei ausgeschaltetem Sentry Mode", + "Total protection for your Tesla. Zero battery drain.": "Vollständiger Schutz für Ihren Tesla. Keine Akkubelastung.", + "Get instant Telegram alerts for door dings and break-in attempts, even when Sentry Mode is disabled.": "Erhalten Sie sofortige Telegram-Benachrichtigungen bei Parkremplern und Einbruchsversuchen, selbst wenn der Sentry Mode deaktiviert ist.", + "The official app only alerts you if the main alarm triggers. SentryGuard fills the critical security gaps.": "Die offizielle App benachrichtigt Sie nur, wenn der Hauptalarm ausgelöst wird. SentryGuard schließt die kritischen Sicherheitslücken.", + "The Tesla app stays silent for door dings. And if you turn off Sentry Mode to save battery, you have absolutely zero protection against break-ins.": "Die Tesla-App bleibt bei Parkremplern stumm. Und wenn Sie den Sentry Mode ausschalten, um Akku zu sparen, haben Sie absolut keinen Schutz vor Einbrüchen.", + "Get instant Telegram alerts when Sentry Mode detects a scratch, OR when someone pulls your locked door handle while Sentry Mode is completely disabled.": "Erhalten Sie eine sofortige Telegram-Benachrichtigung, wenn der Sentry Mode einen Kratzer erkennt ODER wenn jemand an Ihrem verriegelten Türgriff zieht, während der Sentry Mode vollständig deaktiviert ist.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard uses advanced telemetry to instantly alert you if someone pulls your door handle—even when Sentry Mode is off.": "Sie schalten den Sentry Mode zu Hause oder bei der Arbeit aus, um Reichweite zu sparen? Kein Problem. SentryGuard nutzt fortschrittliche Telemetrie, um Sie sofort zu benachrichtigen, wenn jemand an Ihrem Türgriff zieht — selbst wenn der Sentry Mode aus ist.", + "Connect our Telegram bot and receive push notifications the exact second a threat is detected.": "Verbinden Sie unseren Telegram-Bot und erhalten Sie Push-Benachrichtigungen in genau der Sekunde, in der eine Bedrohung erkannt wird.", + "Get instant Telegram alerts for Sentry Mode events, and break-in attempts even when Sentry Mode is disabled.": "Erhalten Sie sofortige Telegram-Benachrichtigungen bei Sentry Mode-Ereignissen und Einbruchsversuchen, selbst wenn der Sentry Mode deaktiviert ist.", + "Two critical features the Tesla App is missing.": "Zwei entscheidende Funktionen, die der Tesla-App fehlen.", + "The official app leaves gaps in your security. We fill them with instant push notifications and Telegram alerts.": "Die offizielle App lässt Lücken in Ihrer Sicherheit. Wir schließen diese Lücken mit sofortigen Push-Benachrichtigungen und Telegram-Alarmen.", + "Requires Sentry Mode ON": "Erfordert eingeschalteten Sentry Mode", + "1. Sentry Mode Alerts": "1. Sentry Mode-Benachrichtigungen", + "Get notified instantly for door dings, scratches, and parking lot accidents.": "Werden Sie sofort über Parkrempler, Kratzer und Parkplatzunfälle benachrichtigt.", + "Tesla App": "Tesla-App", + "Stays silent for minor impacts. You only discover the damage when you get back to your car.": "Bleibt bei kleineren Stößen stumm. Sie entdecken den Schaden erst, wenn Sie zu Ihrem Auto zurückkehren.", + "Instantly pushes an alert to your phone the moment Sentry Mode triggers, so you can react immediately.": "Sendet sofort eine Alarmbenachrichtigung auf Ihr Telefon in dem Moment, in dem der Sentry Mode ausgelöst wird, damit Sie umgehend reagieren können.", + "Works with Sentry Mode OFF": "Funktioniert bei ausgeschaltetem Sentry Mode", + "2. Break-in Detection": "2. Einbruchserkennung", + "Alerts you if someone pulls your door handle, even when you're saving battery.": "Benachrichtigt Sie, wenn jemand an Ihrem Türgriff zieht, selbst wenn Sie Akku sparen.", + "If Sentry Mode is off to save battery at home or at night, you get zero notifications if someone tries to break in.": "Wenn der Sentry Mode zu Hause oder nachts ausgeschaltet ist, um Akku zu sparen, erhalten Sie keinerlei Benachrichtigungen, wenn jemand einzubrechen versucht.", + "Uses advanced telemetry to detect handle pulls and alert you instantly, even when Sentry Mode is disabled.": "Nutzt fortschrittliche Telemetrie, um das Ziehen am Türgriff zu erkennen und Sie sofort zu benachrichtigen, selbst wenn der Sentry Mode deaktiviert ist.", + "The missing security alerts for your Tesla.": "Die fehlenden Sicherheitsbenachrichtigungen für Ihren Tesla.", + "Get an instant push notification the second Sentry Mode records a threat, or when someone pulls your door handle—even if you disabled Sentry Mode to save battery.": "Erhalten Sie eine sofortige Push-Benachrichtigung in der Sekunde, in der der Sentry Mode eine Bedrohung aufzeichnet, oder wenn jemand an Ihrem Türgriff zieht — selbst wenn Sie den Sentry Mode deaktiviert haben, um Akku zu sparen.", + "Unlock commands": "Befehle freischalten", + "Authorize SentryGuard to interact with your vehicle.": "Autorisieren Sie SentryGuard, mit Ihrem Fahrzeug zu interagieren.", + "Authorize": "Autorisieren", + "offensiveResponseLockedTitle": "Autorisierung für Fahrzeugbefehle erforderlich", + "offensiveResponseLockedDescription": "Der automatische Sentry Mode und die offensive Reaktion erfordern die Berechtigung, Befehle an Ihren Tesla zu senden.", + "offensiveResponseLockedButton": "Fahrzeugbefehle autorisieren", + "Privacy Policy": "Datenschutzerklärung", + "Terms of Service": "Nutzungsbedingungen", + "New features available": "Neue Funktionen verfügbar", + "SentryGuard has new advanced security capabilities to better protect your Tesla.": "SentryGuard verfügt über neue erweiterte Sicherheitsfunktionen, um Ihren Tesla besser zu schützen.", + "Detects intrusion attempts on your vehicle. You receive an instant Telegram alert as soon as a break-in attempt is detected.": "Erkennt Einbruchsversuche an Ihrem Fahrzeug. Sie erhalten eine sofortige Telegram-Benachrichtigung, sobald ein Einbruchsversuch erkannt wird.", + "Offensive Response (Horn)": "Offensive Reaktion (Hupe)", + "When the offensive response is active, your vehicle horn triggers automatically upon detection to deter intruders immediately.": "Wenn die offensive Reaktion aktiv ist, wird die Hupe Ihres Fahrzeugs bei einer Erkennung automatisch ausgelöst, um Eindringlinge sofort abzuschrecken.", + "💡 These features are available in the Vehicles section. You can enable break-in monitoring and configure the offensive response for each vehicle independently.": "💡 Diese Funktionen sind im Bereich Fahrzeuge verfügbar. Sie können die Einbruchsüberwachung aktivieren und die offensive Reaktion für jedes Fahrzeug unabhängig konfigurieren.", + "Understood, let's go!": "Verstanden, los geht's!", + "Failed to continue, please try again": "Fortfahren nicht möglich, bitte versuchen Sie es erneut.", + "Security Shield Configuration": "Konfiguration des Sicherheitsschilds", + "Configure the security features for this vehicle below.": "Konfigurieren Sie unten die Sicherheitsfunktionen für dieses Fahrzeug.", + "Receive alerts on Telegram when an intrusion is detected": "Erhalten Sie Benachrichtigungen über Telegram, wenn ein Eindringen erkannt wird", + "Enable Sentry Mode Monitoring": "Sentry Mode-Überwachung aktivieren", + "Activate Sentry Mode Monitoring": "Sentry Mode-Überwachung aktivieren", + "✅ Security monitoring enabled! Your setup is complete.": "✅ Sicherheitsüberwachung aktiviert! Ihre Einrichtung ist abgeschlossen.", + "Four critical features the Tesla App is missing.": "Vier entscheidende Funktionen, die der Tesla-App fehlen.", + "Three critical features the Tesla App is missing.": "Drei entscheidende Funktionen, die der Tesla-App fehlen.", + "Smart Recording": "Intelligente Aufnahme", + "3. Auto Sentry Activation": "3. Automatische Sentry-Aktivierung", + "Automatically wakes up Sentry Mode and starts camera recording the second a break-in attempt is detected, even if Sentry was off.": "Aktiviert den Sentry Mode automatisch und startet die Kameraaufnahme in der Sekunde, in der ein Einbruchsversuch erkannt wird — selbst wenn der Sentry Mode ausgeschaltet war.", + "If Sentry Mode is off to save battery, cameras remain offline. You get zero video footage of the incident.": "Wenn der Sentry Mode zum Akkusparen ausgeschaltet ist, bleiben die Kameras offline. Sie erhalten keinerlei Videoaufnahmen des Vorfalls.", + "Instantly arms Sentry Mode upon handle pull or breach attempt, waking up all cameras to capture the suspect on video.": "Aktiviert den Sentry Mode sofort beim Ziehen am Türgriff oder bei einem Einbruchsversuch und weckt alle Kameras, um den Täter auf Video festzuhalten.", + "4. Active Deterrent": "4. Aktive Abschreckung", + "3. Active Deterrent": "3. Aktive Abschreckung", + "Automatically scare off intruders by triggering your vehicle's horn or boombox sound the moment a break-in is detected.": "Schrecken Sie Eindringlinge automatisch ab, indem die Hupe oder der Boombox-Sound Ihres Fahrzeugs in dem Moment ausgelöst wird, in dem ein Einbruch erkannt wird.", + "Stays passive and silent. The intruder can continue their attempt without any immediate local deterrent.": "Bleibt passiv und stumm. Der Eindringling kann seinen Versuch ohne jede unmittelbare Abschreckung vor Ort fortsetzen.", + "Triggers a loud sound deterrent within seconds to alert bystanders and scare away the intruder.": "Intelligente Abschreckung. Akustische Warnungen werden nur durch tatsächliche Bedrohungen (wie das Ziehen am Türgriff) ausgelöst, um störende Fehlalarme zu vermeiden.", + "Active Defense": "Aktive Verteidigung", + "What is the Active Deterrent (Offensive Response) and how does it work?": "Was ist die Aktive Abschreckung (Offensive Reaktion) und wie funktioniert sie?", + "Active deterrent explanation": "Die Aktive Abschreckung ist eine Sicherheitsfunktion, die automatisch eine akustische Aktion Ihres Fahrzeugs auslöst (Hupe oder Boombox-Furzgeräusch), wenn ein echter, physischer Einbruch erkannt wird (wie das Ziehen an einem Türgriff). Im Gegensatz zu anderen Apps, die bei jeder Kamera-Bewegungserkennung hupen (und so ständige Fehlalarme verursachen), nutzt unser System Telemetrie, um nur auf tatsächliche Bedrohungen zu reagieren. Diese Funktion ist völlig optional, standardmäßig deaktiviert und kann jederzeit für jedes Fahrzeug über Ihr Dashboard vollständig konfiguriert oder deaktiviert werden.", + "Do I have to grant write permissions (vehicle commands) to SentryGuard?": "Muss ich SentryGuard Schreibberechtigungen (Fahrzeugbefehle) erteilen?", + "Write permissions requirement explanation": "Nein. SentryGuard funktioniert einwandfrei in einem rein passiven (schreibgeschützten) Modus, wenn Sie nur Telegram-Benachrichtigungen erhalten möchten. Die Berechtigung zum Senden von Steuerbefehlen wird nur angefordert und benötigt, wenn Sie sich ausdrücklich dafür entscheiden, die Funktion Aktive Abschreckung zu aktivieren, um bei einem Einbruch die Hupe oder den Boombox-Sound auszulösen. Wenn Sie diese Funktion nicht aktivieren, benötigt SentryGuard keinerlei Schreibzugriff auf Ihren Tesla.", + "Get the app": "App herunterladen", + "Get the mobile app": "Laden Sie die mobile App herunter", + "or": "oder" +} diff --git a/apps/webapp/src/locales/en/common.json b/apps/webapp/src/locales/en/common.json index 14cee298..8c482026 100644 --- a/apps/webapp/src/locales/en/common.json +++ b/apps/webapp/src/locales/en/common.json @@ -364,7 +364,7 @@ "offensiveResponseOn": "Horn activated", "offensiveResponseOff": "Horn disabled", "offensiveResponseInfo": "When an alert is triggered, the vehicle will sound its horn or fart for a few seconds.", - "Horn": "Horn ", + "Horn": "Horn", "Fart": "Fart", "offensiveResponseHonk": "Horn activated for intrusion alerts.", "offensiveResponseFart": "Fart (boombox) triggered for intrusion alerts.", diff --git a/apps/webapp/src/locales/es/common.json b/apps/webapp/src/locales/es/common.json new file mode 100644 index 00000000..ac950676 --- /dev/null +++ b/apps/webapp/src/locales/es/common.json @@ -0,0 +1,471 @@ +{ + "© {{year}} SentryGuard. All rights reserved.": "© {{year}} SentryGuard. Todos los derechos reservados.", + "← Back to home": "← Volver al inicio", + "⏳ Waiting for you to click the link and start the bot...": "⏳ Esperando a que haga clic en el enlace e inicie el bot...", + "✅ Your Telegram account is successfully linked!": "✅ ¡Su cuenta de Telegram se ha vinculado correctamente!", + "About Telemetry": "Acerca de la telemetría", + "Additional Permissions Required": "Se requieren permisos adicionales", + "Are you sure you want to disable telemetry for this vehicle?": "¿Está seguro de que desea desactivar la telemetría de este vehículo?", + "Are you sure you want to unlink your Telegram account?": "¿Está seguro de que desea desvincular su cuenta de Telegram?", + "Authenticating...": "Autenticando...", + "Authentication Failed": "Error de autenticación", + "Authentication failed {{error}}": "Error de autenticación: {{error}}", + "Authentication successful! Checking consent status...": "¡Autenticación correcta! Comprobando el estado del consentimiento...", + "Authentication successful! Redirecting to consent form...": "¡Autenticación correcta! Redirigiendo al formulario de consentimiento...", + "Authentication successful! Redirecting to dashboard...": "¡Autenticación correcta! Redirigiendo al panel de control...", + "Battery-Efficient Monitoring": "Monitorización eficiente con la batería", + "Click \"Fix Permissions\" to re-authenticate with Tesla and grant the required permissions. You'll be redirected back here automatically.": "Haga clic en «Corregir permisos» para volver a autenticarse con Tesla y conceder los permisos necesarios. Se le redirigirá aquí automáticamente.", + "Click \"Generate Telegram Link\" to create a unique connection link that expires in 15 minutes.": "Haga clic en «Generar enlace de Telegram» para crear un enlace de conexión único que caduca en 15 minutos.", + "Click the link to open our Telegram bot. The bot will automatically send a /start command with your unique token.": "Haga clic en el enlace para abrir nuestro bot de Telegram. El bot enviará automáticamente un comando /start con su token único.", + "Configure →": "Configurar →", + "Configuring...": "Configurando...", + "Confirm Connection": "Confirmar la conexión", + "Connecting...": "Conectando...", + "Copied!": "¡Copiado!", + "Copy": "Copiar", + "Dashboard": "Panel de control", + "Disable": "Desactivar", + "Disable Telemetry": "Desactivar la telemetría", + "Disabled": "Desactivado", + "Disabling...": "Desactivando...", + "Enable": "Activar", + "Enable Telemetry": "Activar la telemetría", + "Enabled": "Activado", + "Enabling telemetry allows SentryGuard to monitor your vehicle's Sentry Mode status in real-time. When suspicious activity is detected, you'll receive instant alerts via Telegram.": "Activar la telemetría permite a SentryGuard monitorizar el estado del Sentry Mode de su vehículo en tiempo real sin agotar la batería. Cuando se detecta actividad sospechosa, recibirá alertas instantáneas a través de Telegram.", + "End-to-end encrypted communication with Tesla's official API. Your data stays yours.": "Comunicación cifrada de extremo a extremo con la API oficial de Tesla. Sus datos siguen siendo suyos.", + "Failed to initiate login": "Error al iniciar el inicio de sesión", + "Failed to configure telemetry": "Error al configurar la telemetría", + "Failed to enable telemetry": "Error al activar la telemetría", + "Failed to disable telemetry": "Error al desactivar la telemetría", + "Virtual key not added to the vehicle": "Llave virtual no añadida al vehículo", + "Unsupported hardware (pre-2018 Model S/X)": "Hardware no compatible (Model S/X anterior a 2018)", + "Unsupported firmware version for telemetry": "Versión de firmware no compatible con la telemetría", + "Maximum telemetry configurations already present": "Se ha alcanzado el número máximo de configuraciones de telemetría", + "Vehicle skipped for an unknown reason": "Vehículo omitido por un motivo desconocido", + "Vehicle skipped for an unknown reason: {{details}}": "Vehículo omitido por un motivo desconocido: {{details}}", + "Fix Permissions": "Corregir permisos", + "Generate Link": "Generar enlace", + "Generate Telegram Link": "Generar enlace de Telegram", + "Generating...": "Generando...", + "GitHub": "GitHub", + "How It Works": "Cómo funciona", + "If donations no longer cover expenses, the service may shut down, become paid (at actual cost, around $0.50/user), or be limited to current users. Your support keeps it free and open!": "Si las donaciones dejan de cubrir los gastos, el servicio podría cerrarse, pasar a ser de pago (a coste real, alrededor de 0,50 $/usuario) o limitarse a los usuarios actuales. ¡Su apoyo lo mantiene gratuito y abierto!", + "Instant Alerts": "Alertas instantáneas", + "Instant Telegram notifications": "Notificaciones instantáneas de Telegram", + "Link your Telegram account to receive instant vehicle alerts": "Vincule su cuenta de Telegram para recibir alertas instantáneas del vehículo", + "Link your Telegram account to receive vehicle alerts.": "Vincule su cuenta de Telegram para recibir alertas del vehículo.", + "Linked": "Vinculado", + "Linked on": "Vinculado el", + "Loading...": "Cargando...", + "Login Cancelled": "Inicio de sesión cancelado", + "Login with Tesla": "Iniciar sesión con Tesla", + "You cancelled the Tesla login. You can try again whenever you're ready.": "Ha cancelado el inicio de sesión con Tesla. Puede volver a intentarlo cuando quiera.", + "Logout": "Cerrar sesión", + "Manage": "Gestionar", + "Manage Sentry Mode telemetry monitoring": "Gestione la monitorización telemétrica del Sentry Mode de sus vehículos Tesla", + "Manage Vehicles": "Gestionar vehículos", + "Model": "Modelo", + "Monitor and protect your Tesla vehicles": "Monitorice y proteja sus vehículos Tesla", + "Monitor Sentry Mode via telemetry without battery drain": "Monitorice el estado del Sentry Mode de su vehículo mediante telemetría, sin agotar la batería.", + "No vehicles": "Sin vehículos", + "No vehicles found": "No se han encontrado vehículos", + "No vehicles found in your Tesla account. They will appear here automatically once detected.": "No se han encontrado vehículos en su cuenta de Tesla. Aparecerán aquí automáticamente una vez detectados.", + "Not affiliated with Tesla, Inc. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "No afiliado a Tesla, Inc. Tesla y el logotipo de Tesla son marcas registradas de Tesla, Inc.", + "Not linked": "No vinculado", + "Offline access": "Acceso sin conexión", + "Open in Telegram": "Abrir en Telegram", + "Open Telegram": "Abrir Telegram", + "OpenID authentication": "Autenticación OpenID", + "Pair Virtual Key": "Vincular llave virtual", + "Permission Update Required": "Se requiere actualizar los permisos", + "Privacy & Security": "Privacidad y seguridad", + "Processing authentication...": "Procesando la autenticación...", + "Protect Your Tesla": "Proteja su Tesla", + "Quick Actions": "Acciones rápidas", + "Re-authenticating...": "Volviendo a autenticar...", + "Real-time monitoring and instant alerts for your Tesla vehicle": "Monitorización en tiempo real y alertas instantáneas para su vehículo Tesla", + "Real-time Sentry Mode monitoring": "Monitorización del Sentry Mode en tiempo real", + "Receive Alerts": "Recibir alertas", + "Receive real-time Telegram notifications when your vehicle's Sentry Mode is triggered.": "Reciba notificaciones de Telegram en tiempo real cuando se active el Sentry Mode de su vehículo.", + "Refresh": "Actualizar", + "Refresh Vehicles": "Actualizar vehículos", + "Return to Home": "Volver al inicio", + "Secure & Private": "Seguro y privado", + "Secure end-to-end encryption": "Cifrado de extremo a extremo seguro", + "Secure OAuth authentication powered by Tesla": "Autenticación OAuth segura con tecnología de Tesla", + "Send Test Message": "Enviar mensaje de prueba", + "Sending...": "Enviando...", + "SentryGuard": "SentryGuard", + "SentryGuard is a non-profit, open-source project built by the community for Tesla owners. It depends on donations to cover server and development costs.": "SentryGuard es un proyecto de código abierto y sin ánimo de lucro creado por la comunidad para los propietarios de Tesla. Depende de las donaciones para cubrir los costes de servidor y desarrollo.", + "SentryGuard is a non-profit, open-source project developed by the community for Tesla owners.": "SentryGuard es un proyecto de código abierto y sin ánimo de lucro desarrollado por la comunidad para los propietarios de Tesla.", + "SentryGuard needs additional permissions to work properly": "SentryGuard necesita permisos adicionales para funcionar correctamente", + "Setup": "Configuración", + "Success!": "¡Hecho!", + "Support SentryGuard": "Apoyar a SentryGuard", + "Telegram": "Telegram", + "Telegram Alerts": "Alertas de Telegram", + "Telegram Configuration": "Configuración de Telegram", + "Telemetry Enabled": "Telemetría activada", + "Tesla Authorization Revoked": "Autorización de Tesla revocada", + "Tesla security policies required re-authorization": "Las políticas de seguridad de Tesla requirieron una nueva autorización", + "Telemetry monitors Sentry Mode and sends alerts without draining battery": "SentryGuard utiliza la telemetría para monitorizar el estado del Sentry Mode de su vehículo y envía alertas instantáneas de Telegram cuando se detecta actividad sospechosa. Una monitorización eficiente que no agota la batería.", + "Sentry Mode Monitoring": "Monitorización del Sentry Mode", + "Test message sent! Check your Telegram.": "¡Mensaje de prueba enviado! Compruebe su Telegram.", + "This link expires in {{minutes}} minutes": "Este enlace caduca en {{minutes}} minutos", + "To continue using SentryGuard, please reconnect your Tesla account.": "Para seguir usando SentryGuard, vuelva a conectar su cuenta de Tesla.", + "Unlink": "Desvincular", + "Unlinking...": "Desvinculando...", + "User profile data": "Datos del perfil de usuario", + "Vehicle telemetry data": "Datos de telemetría del vehículo", + "Vehicles": "Vehículos", + "View all →": "Ver todo →", + "VIN": "VIN", + "Virtual Key Not Paired": "Llave virtual no vinculada", + "Virtual Key Paired": "Llave virtual vinculada", + "Welcome back": "Bienvenido de nuevo", + "You need to pair your Tesla account with a virtual key to use SentryGuard.": "Necesita vincular su cuenta de Tesla con una llave virtual para usar SentryGuard.", + "You're all set! You'll now receive instant Telegram notifications when your vehicle's Sentry Mode is triggered.": "¡Todo listo! A partir de ahora recibirá notificaciones instantáneas de Telegram cuando se active el Sentry Mode de su vehículo.", + "Your account will be linked instantly. Return to this page to see the confirmation and send a test message.": "Su cuenta se vinculará de forma instantánea. Vuelva a esta página para ver la confirmación y enviar un mensaje de prueba.", + "Your Telegram account is connected. You will receive alerts here.": "Su cuenta de Telegram está conectada. Recibirá las alertas aquí.", + "Your Telegram chat ID is securely stored and only used to send you vehicle alerts. You can unlink your account at any time, and all associated data will be removed.": "Su ID de chat de Telegram se almacena de forma segura y solo se utiliza para enviarle alertas del vehículo. Puede desvincular su cuenta en cualquier momento, y todos los datos asociados se eliminarán.", + "Your Telegram Link": "Su enlace de Telegram", + "Your Tesla account is successfully paired with a virtual key.": "Su cuenta de Tesla está correctamente vinculada a una llave virtual.", + "Your Tesla account needs additional permissions to use SentryGuard": "Su cuenta de Tesla necesita permisos adicionales para usar SentryGuard", + "Your Tesla account access has been removed. This typically happens when:": "Se ha retirado el acceso a su cuenta de Tesla. Esto suele ocurrir cuando:", + "You removed SentryGuard from your Tesla account": "Eliminó SentryGuard de su cuenta de Tesla", + "You changed your Tesla account password": "Cambió la contraseña de su cuenta de Tesla", + "Your session has expired. Please log in again.": "Su sesión ha caducado. Vuelva a iniciar sesión.", + "Your Vehicles": "Sus vehículos", + "Your vehicles will appear here once they are synced from your Tesla account. Visit the Vehicles page to refresh.": "Sus vehículos aparecerán aquí una vez sincronizados desde su cuenta de Tesla. Visite la página Vehículos para actualizar.", + "Something went wrong": "Se ha producido un error", + "We encountered an unexpected error. Please try refreshing the page.": "Se ha producido un error inesperado. Intente actualizar la página.", + "Try Again": "Reintentar", + "Reloading...": "Recargando...", + "If the problem persists, please contact support.": "Si el problema persiste, póngase en contacto con el soporte.", + "Tesla Fleet API Consent": "Consentimiento de la API Fleet de Tesla", + "Please read and accept the terms below to continue": "Lea y acepte las condiciones que figuran a continuación para continuar", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Al firmar o aceptar este formulario, usted consiente el tratamiento de sus Datos Personales por parte de SentryGuardOrg («Socio») en el contexto de la aplicación del Socio denominada SentryGuard (la «App»).", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "El Socio es el responsable del tratamiento encargado del tratamiento de sus Datos Personales en el contexto de la App.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Al firmar o aceptar este formulario, usted también reconoce haber recibido el Aviso de Privacidad del Cliente de Tesla disponible en", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(«Aviso de Privacidad de Tesla») y consiente el tratamiento de sus Datos Personales por parte de Tesla de conformidad con el Aviso de Privacidad de Tesla.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (e.g., event detection, Sentry Mode alerts).": "La App le permite beneficiarse de funciones avanzadas de monitorización y notificación basadas en el Sentry Mode de su vehículo Tesla, incluida la identificación y el registro de eventos de seguridad (por ejemplo, detección de eventos, alertas del Sentry Mode).", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events) and metadata associated with Sentry Mode events (date/time, event type).": "Para ofrecer estas funciones, el Socio debe tratar algunos de sus Datos Personales, que pueden incluir:\n\n- información de perfil (identificador de cuenta, nombre para mostrar o dirección de correo electrónico, necesarios para asociar los eventos con su cuenta);\n\n- información mínima del vehículo necesaria para el funcionamiento de la App, incluido el identificador del vehículo (VIN o equivalente), el estado del Sentry Mode (activación, eventos detectados) y los metadatos asociados a los eventos del Sentry Mode (fecha/hora, tipo de evento).", + "Partner does not access or process other categories of data from your vehicle (e.g., remote commands, detailed driving data, battery or precise location information), beyond what is strictly necessary for the App to function as described above.": "El Socio no accede ni trata otras categorías de datos de su vehículo (por ejemplo, comandos remotos, datos detallados de conducción, información de batería o de ubicación precisa), más allá de lo estrictamente necesario para el funcionamiento de la App tal y como se describe anteriormente.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "El Socio solo utilizará esta información para:\n\n(a) proporcionarle funciones de monitorización y notificación relacionadas con el Sentry Mode;\n\n(b) asociar los eventos del Sentry Mode con su cuenta de usuario y su vehículo;\n\n(c) mejorar la fiabilidad y la seguridad del servicio (por ejemplo, diagnóstico de incidentes técnicos);\n\n(d) cumplir con las obligaciones legales aplicables, cuando proceda.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "El Socio mantiene salvaguardas administrativas, técnicas y físicas diseñadas para proteger los Datos Personales frente a la destrucción, pérdida, alteración, acceso, divulgación o uso accidentales, ilícitos o no autorizados, incluido el cifrado de los datos en tránsito y, cuando proceda, en reposo. El Socio solo conservará sus Datos Personales durante el tiempo necesario para proporcionarle la App y las funciones descritas anteriormente, salvo que la ley aplicable exija o autorice lo contrario o si usted solicita su supresión anticipada.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "La App se proporciona «tal cual» y «según disponibilidad», sin garantía de ningún tipo. SentryGuard y sus autores declinan toda responsabilidad por cualquier daño directo, indirecto, incidental, especial o consecuente, incluidos, entre otros, daños al vehículo, pérdida de datos o interrupciones del servicio, derivados del uso o de la imposibilidad de usar la App. El usuario asume la responsabilidad única y total del uso de la App y de cualquier acción automatizada configurada (como hacer sonar el claxon).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "Sujeto a la legislación aplicable (incluido el RGPD), usted puede tener derecho a solicitar el acceso y recibir información sobre sus Datos Personales, a actualizar y corregir inexactitudes, y a solicitar su supresión cuando se cumplan las condiciones legales. También tiene derecho a retirar su consentimiento en cualquier momento, sin coste alguno, lo que, no obstante, podría limitar o impedir el uso de la App.\n\nPara ejercer sus derechos, retirar su consentimiento u obtener más información sobre la App y el tratamiento de sus Datos Personales, puede ponerse en contacto con el Socio en: hello@sentryguard.org.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Consiento la recopilación, el uso y el tratamiento de mis Datos Personales tal y como se describe anteriormente.", + "I Accept": "Acepto", + "Processing...": "Procesando...", + "Consent accepted successfully!": "¡Consentimiento aceptado correctamente!", + "Accepted at: {{date}}": "Aceptado el: {{date}}", + "Redirecting to dashboard...": "Redirigiendo al panel de control...", + "By clicking \"I Accept\", you agree to the terms above and consent to the processing of your personal data.": "Al hacer clic en «Acepto», acepta las condiciones anteriores y consiente el tratamiento de sus datos personales.", + "Revoke Consent": "Revocar el consentimiento", + "Are you sure you want to revoke your consent? This will permanently delete your account and all associated data, including telemetry configurations.": "¿Está seguro de que desea revocar su consentimiento? Esto eliminará de forma permanente su cuenta y todos los datos asociados, incluidas las configuraciones de telemetría.", + "Loading consent text...": "Cargando el texto de consentimiento...", + "Failed to load consent text": "Error al cargar el texto de consentimiento", + "Frequently Asked Questions": "Preguntas frecuentes", + "Find answers to common questions about SentryGuard": "Encuentre respuestas a las preguntas habituales sobre SentryGuard", + "General Questions": "Preguntas generales", + "What is SentryGuard?": "¿Qué es SentryGuard?", + "SentryGuard is a non-profit, open-source service that monitors your Tesla vehicle's Sentry Mode status in real-time and sends instant alerts via Telegram when suspicious activity is detected. It uses Tesla's official API and telemetry to provide efficient monitoring without draining your battery.": "SentryGuard es un servicio de código abierto y sin ánimo de lucro que monitoriza el estado del Sentry Mode de su vehículo Tesla en tiempo real y envía alertas instantáneas a través de Telegram cuando se detecta actividad sospechosa. Utiliza la API oficial de Tesla y la telemetría para ofrecer una monitorización eficiente sin agotar la batería.", + "Is SentryGuard free?": "¿Es SentryGuard gratuito?", + "Yes, SentryGuard is completely free to use. However, it depends on donations to cover server and development costs. If donations no longer cover expenses, the service may need to adapt, but we strive to keep it free and open-source for the community.": "Sí, SentryGuard es totalmente gratuito. No obstante, depende de las donaciones para cubrir los costes de servidor y desarrollo. Si las donaciones dejan de cubrir los gastos, es posible que el servicio tenga que adaptarse, pero nos esforzamos por mantenerlo gratuito y de código abierto para la comunidad.", + "Is SentryGuard affiliated with Tesla?": "¿Está SentryGuard afiliado a Tesla?", + "No, SentryGuard is not affiliated with Tesla, Inc. It is an independent, community-driven project. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "No, SentryGuard no está afiliado a Tesla, Inc. Es un proyecto independiente impulsado por la comunidad. Tesla y el logotipo de Tesla son marcas registradas de Tesla, Inc.", + "How does SentryGuard work?": "¿Cómo funciona SentryGuard?", + "SentryGuard uses Tesla's official Fleet API to monitor your vehicle's Sentry Mode status via telemetry. When Sentry Mode is triggered, you receive instant notifications through Telegram. The monitoring is battery-efficient as it uses telemetry data rather than constantly polling your vehicle.": "SentryGuard utiliza la API Fleet oficial de Tesla para monitorizar el estado del Sentry Mode de su vehículo mediante telemetría. Cuando se activa el Sentry Mode, usted recibe notificaciones instantáneas a través de Telegram. La monitorización es eficiente con la batería, ya que utiliza datos de telemetría en lugar de consultar constantemente su vehículo.", + "Setup & Configuration": "Instalación y configuración", + "How do I get started with SentryGuard?": "¿Cómo empiezo a usar SentryGuard?", + "To get started, click \"Login with Tesla\" on the homepage. You'll be redirected to Tesla's official authentication page. After logging in and granting permissions, you'll need to accept the consent form, then configure Telegram alerts and enable telemetry for your vehicles.": "Para empezar, haga clic en «Iniciar sesión con Tesla» en la página de inicio. Se le redirigirá a la página de autenticación oficial de Tesla. Tras iniciar sesión y conceder los permisos, deberá aceptar el formulario de consentimiento y, a continuación, configurar las alertas de Telegram y activar la telemetría de sus vehículos.", + "What permissions does SentryGuard need?": "¿Qué permisos necesita SentryGuard?", + "SentryGuard requires access to your vehicle's telemetry data to monitor Sentry Mode status. It does not access location data, battery details, or remote commands beyond what is necessary for monitoring Sentry Mode events.": "SentryGuard requiere acceso a los datos de telemetría de su vehículo para monitorizar el estado del Sentry Mode. No accede a datos de ubicación, detalles de la batería ni comandos remotos más allá de lo necesario para monitorizar los eventos del Sentry Mode.", + "How do I link my Telegram account?": "¿Cómo vinculo mi cuenta de Telegram?", + "Go to the Telegram Configuration page in your dashboard, click \"Generate Telegram Link\", and open the link in Telegram. The bot will automatically link your account. The link expires in 15 minutes for security.": "Vaya a la página de Configuración de Telegram en su panel de control, haga clic en «Generar enlace de Telegram» y abra el enlace en Telegram. El bot vinculará automáticamente su cuenta. El enlace caduca en 15 minutos por motivos de seguridad.", + "What if I can't enable telemetry for my vehicle?": "¿Qué hago si no puedo activar la telemetría de mi vehículo?", + "Some vehicles may not support telemetry due to hardware limitations (pre-2018 Model S/X) or firmware versions. Make sure your vehicle has a virtual key paired and is running a supported firmware version. If issues persist, check the error message for specific details.": "Algunos vehículos pueden no ser compatibles con la telemetría debido a limitaciones de hardware (Model S/X anterior a 2018) o a versiones de firmware. Asegúrese de que su vehículo tiene una llave virtual vinculada y ejecuta una versión de firmware compatible. Si los problemas persisten, consulte el mensaje de error para conocer los detalles concretos.", + "Security & Privacy": "Seguridad y privacidad", + "Is my data secure?": "¿Están seguros mis datos?", + "Yes, SentryGuard uses Tesla's official API with end-to-end encryption. Your data is stored securely and only used to provide monitoring and alert services. We only access the minimal data necessary for Sentry Mode monitoring.": "Sí, SentryGuard utiliza la API oficial de Tesla con cifrado de extremo a extremo. Sus datos se almacenan de forma segura y solo se utilizan para prestar servicios de monitorización y alerta. Solo accedemos a los datos mínimos necesarios para la monitorización del Sentry Mode.", + "What data does SentryGuard collect?": "¿Qué datos recopila SentryGuard?", + "SentryGuard only collects: profile information (account identifier, display name or email), minimal vehicle information (VIN, Sentry Mode status, event metadata). We do not access location data, detailed driving data, battery information, or remote commands beyond what is necessary for Sentry Mode monitoring.": "SentryGuard solo recopila: información de perfil (identificador de cuenta, nombre para mostrar o correo electrónico) e información mínima del vehículo (VIN, estado del Sentry Mode, metadatos de eventos). No accedemos a datos de ubicación, datos detallados de conducción, información de la batería ni comandos remotos más allá de lo necesario para la monitorización del Sentry Mode.", + "Can I delete my data?": "¿Puedo eliminar mis datos?", + "Yes, you can unlink your Telegram account and revoke your consent at any time. This will remove all associated data. You can also contact us at hello@sentryguard.org to request data deletion.": "Sí, puede desvincular su cuenta de Telegram y revocar su consentimiento en cualquier momento. Esto eliminará todos los datos asociados. También puede ponerse en contacto con nosotros en hello@sentryguard.org para solicitar la eliminación de sus datos.", + "Where is my data stored?": "¿Dónde se almacenan mis datos?", + "Your data is stored on secure servers with encryption in transit and at rest. We maintain administrative, technical, and physical safeguards to protect your personal data.": "Sus datos se almacenan en servidores seguros con cifrado en tránsito y en reposo. Mantenemos salvaguardas administrativas, técnicas y físicas para proteger sus datos personales.", + "Troubleshooting": "Resolución de problemas", + "I'm not receiving Telegram alerts. What should I do?": "No recibo alertas de Telegram. ¿Qué debo hacer?", + "First, verify that your Telegram account is linked correctly. Send a test message from the Telegram Configuration page. Make sure telemetry is enabled for your vehicle and that Sentry Mode is active on your Tesla. Check that you haven't blocked the Telegram bot.": "En primer lugar, compruebe que su cuenta de Telegram está vinculada correctamente. Envíe un mensaje de prueba desde la página de Configuración de Telegram. Asegúrese de que la telemetría está activada para su vehículo y de que el Sentry Mode está activo en su Tesla. Compruebe que no ha bloqueado el bot de Telegram.", + "Why did my Tesla authorization get revoked?": "¿Por qué se ha revocado mi autorización de Tesla?", + "Tesla authorization can be revoked if you remove SentryGuard from your Tesla account, change your Tesla password, or if Tesla security policies require re-authorization. Simply log in again to restore access.": "La autorización de Tesla puede revocarse si elimina SentryGuard de su cuenta de Tesla, cambia su contraseña de Tesla o si las políticas de seguridad de Tesla requieren una nueva autorización. Basta con volver a iniciar sesión para restablecer el acceso.", + "SentryGuard shows \"Virtual Key Not Paired\". What does this mean?": "SentryGuard muestra «Llave virtual no vinculada». ¿Qué significa esto?", + "You need to pair a virtual key with your vehicle to use SentryGuard. This is done through the Tesla app. Go to Security & Drivers in your Tesla app and add SentryGuard as a key. Then return to SentryGuard and refresh your vehicles.": "Necesita vincular una llave virtual con su vehículo para usar SentryGuard. Esto se hace a través de la app de Tesla. Vaya a Seguridad y conductores en su app de Tesla y añada SentryGuard como llave. A continuación, vuelva a SentryGuard y actualice sus vehículos.", + "Can I use SentryGuard with multiple vehicles?": "¿Puedo usar SentryGuard con varios vehículos?", + "Yes, SentryGuard supports multiple vehicles. Each vehicle can be configured independently. Go to the Vehicles page to manage telemetry for each vehicle.": "Sí, SentryGuard admite varios vehículos. Cada vehículo puede configurarse de forma independiente. Vaya a la página Vehículos para gestionar la telemetría de cada vehículo.", + "Support & Donations": "Soporte y donaciones", + "How can I support SentryGuard?": "¿Cómo puedo apoyar a SentryGuard?", + "You can support SentryGuard by making a donation through the Buy Me a Coffee widget on the website. Your support helps cover server costs and keeps the service free for everyone. You can also contribute to the project on GitHub.": "Puede apoyar a SentryGuard haciendo una donación a través del widget de Buy Me a Coffee en el sitio web. Su apoyo ayuda a cubrir los costes de servidor y mantiene el servicio gratuito para todos. También puede contribuir al proyecto en GitHub.", + "How can I report a bug or request a feature?": "¿Cómo puedo informar de un error o solicitar una función?", + "You can report bugs or request features by opening an issue on our GitHub repository at https://github.com/abarghoud/SentryGuard. We welcome community contributions!": "Puede informar de errores o solicitar funciones abriendo una incidencia en nuestro repositorio de GitHub en https://github.com/abarghoud/SentryGuard. ¡Las contribuciones de la comunidad son bienvenidas!", + "Who can I contact for support?": "¿Con quién puedo ponerme en contacto para obtener soporte?", + "For support, you can contact us at hello@sentryguard.org or open an issue on GitHub. We do our best to respond to all inquiries.": "Para obtener soporte, puede ponerse en contacto con nosotros en hello@sentryguard.org o abrir una incidencia en GitHub. Hacemos todo lo posible por responder a todas las consultas.", + "Still have questions?": "¿Aún tiene preguntas?", + "Can't find the answer you're looking for? Please feel free to contact us.": "¿No encuentra la respuesta que busca? No dude en ponerse en contacto con nosotros.", + "Contact Support": "Contactar con el soporte", + "FAQ": "Preguntas frecuentes", + "Does Sentry Mode need to be activated to receive notifications?": "¿Es necesario activar el Sentry Mode para recibir notificaciones?", + "Why Telegram?": "¿Por qué Telegram?", + "Does SentryGuard impact the vehicle's battery or range?": "¿Afecta SentryGuard a la batería o a la autonomía del vehículo?", + "What is SentryGuard description": "SentryGuard es un servicio de código abierto y sin ánimo de lucro que monitoriza el estado del Sentry Mode de su vehículo Tesla en tiempo real y envía alertas instantáneas a través de Telegram cuando se detecta actividad sospechosa. Utiliza la API oficial de Tesla y la telemetría para ofrecer una monitorización eficiente sin agotar la batería.", + "SentryGuard requires active Sentry Mode": "Para detectar arañazos, golpes de puerta y movimientos cercanos, sí, el Sentry Mode debe estar activo. Sin embargo, SentryGuard también incorpora un sistema de Detección de Intrusiones que funciona incluso cuando el Sentry Mode está completamente desactivado.", + "Does SentryGuard protect my car when Sentry Mode is OFF?": "¿Protege SentryGuard mi coche cuando el Sentry Mode está desactivado?", + "Break-in detection explanation": "¡Sí! Aunque desactive el Sentry Mode para ahorrar batería, SentryGuard monitoriza la telemetría de su vehículo de forma continua. Si alguien intenta tirar de la manija de su puerta, recibirá una alerta de Telegram instantánea.", + "Can SentryGuard turn on Sentry Mode automatically during a break-in?": "¿Puede SentryGuard activar el Sentry Mode automáticamente durante una intrusión?", + "Auto Sentry Mode explanation": "¡Sí! Cuando el Sentry Mode automático está activado en los ajustes de su vehículo, SentryGuard activa automáticamente el Sentry Mode en cuanto se detecta un intento de intrusión, de modo que las cámaras empiezan a grabar aunque el Sentry Mode estuviera desactivado. Esto requiere la autorización vehicle_cmds (la misma que se usa para el claxon).", + "Why we chose Telegram": "Telegram ofrece una API de bots potente y segura que nos permite enviar notificaciones push instantáneas en tiempo real. Es increíblemente rápida, fiable y totalmente gratuita.", + "Is there a SentryGuard mobile app?": "¿Existe una aplicación móvil de SentryGuard?", + "SentryGuard mobile app explanation": "¡Sí! SentryGuard está disponible como aplicación móvil nativa tanto para iOS como para Android. Envía notificaciones push instantáneas en el segundo en que se activa el Sentry Mode, y le permite supervisar sus vehículos y consultar su historial de alertas directamente desde su teléfono.", + "Do I need the mobile app to receive alerts?": "¿Necesito la aplicación móvil para recibir alertas?", + "Mobile app vs Telegram alerts": "No. Si ya recibe alertas a través de Telegram, todo sigue funcionando exactamente igual que antes. La aplicación móvil simplemente añade las notificaciones push nativas como canal adicional, junto con un acceso rápido a su panel de control desde el móvil.", + "How do I get the SentryGuard mobile app?": "¿Cómo obtengo la aplicación móvil de SentryGuard?", + "How to get the mobile app": "Puede descargar SentryGuard desde el App Store en iOS o desde Google Play en Android. Vaya a la <0>sección de descarga de nuestra página de inicio para instalarla en su dispositivo.", + "Is SentryGuard free description": "Sí, SentryGuard es totalmente gratuito. No obstante, depende de las donaciones para cubrir los costes de servidor y desarrollo. Si las donaciones dejan de cubrir los gastos, es posible que el servicio tenga que adaptarse, pero nos esforzamos por mantenerlo gratuito y de código abierto para la comunidad.", + "Is SentryGuard affiliated with Tesla description": "No, SentryGuard no está afiliado a Tesla, Inc. Es un proyecto independiente impulsado por la comunidad. Tesla y el logotipo de Tesla son marcas registradas de Tesla, Inc.", + "How does SentryGuard work description": "SentryGuard utiliza la API Fleet oficial de Tesla para monitorizar el estado del Sentry Mode de su vehículo mediante telemetría. Cuando se activa el Sentry Mode, usted recibe notificaciones instantáneas a través de Telegram. La monitorización es eficiente con la batería, ya que utiliza datos de telemetría en lugar de consultar constantemente su vehículo.", + "How to get started with SentryGuard": "Para empezar, haga clic en «Iniciar sesión con Tesla» en la página de inicio. Se le redirigirá a la página de autenticación oficial de Tesla. Tras iniciar sesión y conceder los permisos, deberá aceptar el formulario de consentimiento. Después, en la <0>página Vehículos, vincule una llave virtual con su vehículo (esto le redirigirá al sitio web de Tesla para aprobarla a través de la app de Tesla), <1>configure las alertas de Telegram y active la telemetría de sus vehículos.", + "What permissions SentryGuard needs": "SentryGuard requiere acceso a los datos de telemetría de su vehículo para monitorizar el estado del Sentry Mode. No accede a datos de ubicación, detalles de la batería ni comandos remotos más allá de lo necesario para monitorizar los eventos del Sentry Mode.", + "How to link Telegram account": "Vaya a la <0>página de Configuración de Telegram en su panel de control, haga clic en «Generar enlace de Telegram» y abra el enlace en Telegram. El bot vinculará automáticamente su cuenta. El enlace caduca en 15 minutos por motivos de seguridad.", + "Cannot enable telemetry help": "Algunos vehículos pueden no ser compatibles con la telemetría debido a limitaciones de hardware (Model S/X anterior a 2018) o a versiones de firmware. Asegúrese de que su vehículo tiene una llave virtual vinculada y ejecuta una versión de firmware compatible. Si los problemas persisten, consulte el mensaje de error para conocer los detalles concretos.", + "Is my data secure answer": "Sí, SentryGuard utiliza la API oficial de Tesla con cifrado de extremo a extremo. Sus datos se almacenan de forma segura y solo se utilizan para prestar servicios de monitorización y alerta. Solo accedemos a los datos mínimos necesarios para la monitorización del Sentry Mode.", + "What data SentryGuard collects": "SentryGuard solo recopila: información de perfil (identificador de cuenta, nombre para mostrar o correo electrónico) e información mínima del vehículo (VIN, estado del Sentry Mode, metadatos de eventos). No accedemos a datos de ubicación, datos detallados de conducción, información de la batería ni comandos remotos más allá de lo necesario para la monitorización del Sentry Mode.", + "Can I delete my data answer": "Sí, puede desvincular su cuenta de Telegram y revocar su consentimiento en cualquier momento. Esto eliminará todos los datos asociados. La funcionalidad de eliminación de datos está actualmente en desarrollo. Por ahora, póngase en contacto con nosotros en <0>hello@sentryguard.org para solicitar la eliminación de sus datos.", + "Where is my data stored answer": "Sus datos se almacenan en servidores seguros ubicados en Europa, con cifrado en tránsito y en reposo. Mantenemos salvaguardas administrativas, técnicas y físicas para proteger sus datos personales.", + "Not receiving alerts help": "En primer lugar, compruebe que su cuenta de Telegram está vinculada correctamente. Envíe un mensaje de prueba desde la <0>página de Configuración de Telegram. Asegúrese de que la telemetría está activada para su vehículo y de que el Sentry Mode está activo en su Tesla. Compruebe también la <1>configuración del vehículo para activar la telemetría y configurar la llave virtual. Por último, compruebe que no ha bloqueado el bot de Telegram.", + "SentryGuard battery impact": "No, SentryGuard no tiene ningún impacto en la batería ni en la autonomía de su vehículo. El servicio utiliza el sistema de telemetría de Tesla, diseñado para ser extremadamente eficiente. A diferencia de las aplicaciones de terceros que podrían consultar su vehículo constantemente, SentryGuard solo recibe datos cuando se producen eventos, utilizando un ancho de banda mínimo y sin consumir batería adicional de su vehículo.", + "Tesla authorization revoked help": "La autorización de Tesla puede revocarse si elimina SentryGuard de su cuenta de Tesla, cambia su contraseña de Tesla o si las políticas de seguridad de Tesla requieren una nueva autorización. Basta con volver a iniciar sesión para restablecer el acceso.", + "Virtual key not paired help": "Necesita vincular una llave virtual con su vehículo para usar SentryGuard. En la <0>página Vehículos, haga clic en el botón «Vincular llave virtual», que le redirigirá al sitio web de Tesla. Esto abrirá su app de Tesla, donde podrá aprobar la solicitud de llave virtual. Una vez aprobada, vuelva a SentryGuard y actualice sus vehículos.", + "Multiple vehicles support": "Sí, SentryGuard admite varios vehículos. Cada vehículo puede configurarse de forma independiente. Vaya a la página Vehículos para gestionar la telemetría de cada vehículo.", + "How to support SentryGuard": "Puede apoyar a SentryGuard haciendo una donación a través del widget de Buy Me a Coffee en el sitio web, o directamente en <1>https://buymeacoffee.com/sentryguardorg. Su apoyo ayuda a cubrir los costes de servidor y mantiene el servicio gratuito para todos. También puede contribuir al proyecto en <0>GitHub dando una estrella al repositorio, informando de problemas o enviando pull requests.", + "How to report bugs or request features": "Puede informar de errores o solicitar funciones abriendo una incidencia en nuestro <0>repositorio de GitHub, o poniéndose en contacto con nosotros a través del chat de soporte del sitio web. ¡Las contribuciones de la comunidad son bienvenidas!", + "Who to contact for support": "Para obtener soporte, puede ponerse en contacto con nosotros en <0>hello@sentryguard.org, abrir una incidencia en <1>GitHub o utilizar el chat de soporte del sitio web. Hacemos todo lo posible por responder a todas las consultas.", + "Does SentryGuard provide video footage?": "¿Proporciona SentryGuard grabaciones de vídeo?", + "SentryGuard video access explanation": "SentryGuard no tiene acceso a las grabaciones de vídeo de las cámaras de su vehículo. No obstante, cuando reciba una alerta del Sentry Mode a través de Telegram, puede hacer clic en el botón «Comprobar» del mensaje para abrir directamente la app de Tesla y ver la transmisión en directo de la cámara con el fin de verificar qué activó la alerta.", + "Do I need Tesla Premium Connectivity to use SentryGuard?": "¿Necesito la Conectividad Premium de Tesla para usar SentryGuard?", + "Tesla Premium Connectivity requirement": "No, no necesita la Conectividad Premium de Tesla para usar SentryGuard. El servicio funciona con la conectividad estándar de Tesla y utiliza la API Fleet para los datos de telemetría. No obstante, la Conectividad Premium puede ser necesaria para algunas funciones avanzadas de Tesla, pero SentryGuard en sí funciona con la conectividad básica del vehículo.", + "Why doesn't Sentry Mode trigger when I test it myself?": "¿Por qué no se activa el Sentry Mode cuando lo pruebo yo mismo?", + "Sentry Mode testing explanation": "Cuando prueba el Sentry Mode usted mismo con su teléfono cerca, Tesla detecta su llave digital y no activa el Sentry Mode porque reconoce a un usuario autorizado. El Sentry Mode solo se activa cuando el vehículo detecta una posible actividad no autorizada. Para probarlo correctamente, utilice el teléfono de otra persona para activar la detección de movimiento o cámara, o pruébelo desde más lejos sin llevar su teléfono.", + "Why is SentryGuard faster than Tesla notifications?": "¿Por qué es SentryGuard más rápido que las notificaciones de Tesla?", + "SentryGuard speed advantage explanation": "SentryGuard ofrece notificaciones instantáneas en cuanto Tesla detecta un evento y empieza a grabar, lo que le permite tener conocimiento inmediato de posibles incidentes de seguridad. En cambio, la propia app de Tesla solo muestra el vídeo grabado una vez finalizada la grabación, e incluso las notificaciones directas de Tesla llegan varios segundos más tarde. Esta ventaja de rapidez puede resultar crucial para responder con celeridad a las amenazas de seguridad.", + "Does SentryGuard support older Model S/X vehicles?": "¿Es compatible SentryGuard con los vehículos Model S/X antiguos?", + "Legacy vehicles support explanation": "¡Sí! Los vehículos Model S y Model X antiguos (normalmente fabricados antes de 2021) que utilizan el sistema de infoentretenimiento MCU1 o MCU2 son totalmente compatibles con SentryGuard. A diferencia de los modelos más recientes, estos vehículos no admiten ni necesitan vincular una llave virtual para que la telemetría funcione. Puede activar la telemetría directamente, sin el paso de vinculación.", + "Settings": "Ajustes", + "Manage your account settings and preferences": "Gestione los ajustes y preferencias de su cuenta", + "Account Information": "Información de la cuenta", + "Name": "Nombre", + "Email": "Correo electrónico", + "Danger Zone": "Zona de peligro", + "Delete Account": "Eliminar mi cuenta", + "Delete account description": "La eliminación de su cuenta es permanente e irreversible. Todos sus datos, incluidas las configuraciones de telemetría, las alertas de Telegram y la información del vehículo, se eliminarán de forma permanente.", + "Delete account confirmation": "¿Está seguro de que desea eliminar su cuenta? Esta acción es permanente y eliminará todos sus datos, incluidas las configuraciones de telemetría y las alertas de Telegram. Esta acción no se puede deshacer.", + "Back to Dashboard": "Volver al panel de control", + "You're on the Waitlist!": "¡Está en la lista de espera!", + "Thank you for your interest in SentryGuard": "Gracias por su interés en SentryGuard", + "We have received your registration for": "Hemos recibido su registro para", + "Your account is pending approval. We'll send you an email once your account has been approved and you can start using SentryGuard.": "Su cuenta está pendiente de aprobación. Le enviaremos un correo electrónico en cuanto su cuenta haya sido aprobada y pueda empezar a usar SentryGuard.", + "Approval is typically processed within 24-48 hours.": "La aprobación se suele tramitar en un plazo de 24-48 horas.", + "No email within 72 hours? Check your spam or promotions folder.": "¿No ha recibido el correo electrónico en 72 horas? Compruebe su carpeta de spam o promociones.", + "Back to home": "Volver al inicio", + "Join our Discord community while you wait": "¡Únase a nuestra comunidad de Discord mientras espera!", + "Join Discord": "Unirse a Discord", + "Waitlist": "Lista de espera", + "Why is there a waitlist?": "¿Por qué hay una lista de espera?", + "Why is there a waitlist answer": "SentryGuard gestiona el acceso mediante una lista de espera para garantizar que el servicio se mantenga estable y fiable para todos los usuarios. A medida que crecemos, la lista de espera nos permite incorporar a los nuevos usuarios de forma fluida.", + "How long does waitlist approval take?": "¿Cuánto tarda la aprobación de la lista de espera?", + "How long does waitlist approval take answer": "Las aprobaciones de cuenta se suelen tramitar en un plazo de 24 a 48 horas. Recibirá un correo electrónico de bienvenida en cuanto su cuenta haya sido aprobada.", + "What happens after I'm approved?": "¿Qué ocurre después de que me aprueben?", + "What happens after I'm approved answer": "Una vez aprobado, recibirá un correo electrónico de bienvenida con una guía paso a paso para empezar. Tendrá acceso a su panel de control, donde podrá configurar las alertas de Telegram, vincular una llave virtual con su vehículo y activar la monitorización de la telemetría.", + "I signed up but didn't receive an approval email": "Me he registrado, pero no he recibido el correo electrónico de aprobación. ¿Qué debo hacer?", + "I signed up but didn't receive an approval email answer": "En primer lugar, compruebe sus carpetas de spam y promociones. El correo electrónico de bienvenida se envía automáticamente una vez aprobada su cuenta. Si tiene alguna pregunta sobre su estado, póngase en contacto con nosotros en hello@sentryguard.org indicando su dirección de correo electrónico.", + "Can I check my waitlist status?": "¿Puedo comprobar mi estado en la lista de espera?", + "Can I check my waitlist status answer": "Puede comprobar su estado intentando iniciar sesión. Si se le redirige a la página de la lista de espera, su cuenta sigue pendiente de aprobación. Una vez aprobada, podrá iniciar sesión con normalidad en su panel de control.", + "Can I use SentryGuard while on the waitlist?": "¿Puedo usar SentryGuard mientras estoy en la lista de espera?", + "Can I use SentryGuard while on the waitlist answer": "No, deberá esperar a la aprobación para acceder al panel de control y utilizar las funciones de SentryGuard. Mientras espera, le recomendamos explorar nuestras preguntas frecuentes y la documentación para prepararse para cuando su cuenta sea aprobada.", + "What if I try to log in before being approved?": "¿Qué ocurre si intento iniciar sesión antes de que me aprueben?", + "What if I try to log in before being approved answer": "Se le redirigirá a la página de la lista de espera, donde podrá ver su dirección de correo electrónico. Permanecerá en la lista de espera hasta que aprobemos su cuenta, momento en el que podrá iniciar sesión con normalidad.", + "Link Your Telegram Account": "Vincule su cuenta de Telegram", + "You will receive instant alerts when suspicious activity is detected": "Recibirá alertas instantáneas cuando se detecte actividad sospechosa", + "💡 You are about to open Telegram. Once you've linked your account, return to SentryGuard to continue.": "💡 Está a punto de abrir Telegram. Una vez que haya vinculado su cuenta, vuelva a SentryGuard para continuar.", + "How it works:": "Cómo funciona:", + "Click \"Generate Telegram Link\"": "Haga clic en «Generar enlace de Telegram»", + "Click the link to open Telegram": "Haga clic en el enlace para abrir Telegram", + "The bot will automatically link your account": "El bot vinculará automáticamente su cuenta", + "Return here and continue": "Vuelva aquí y continúe", + "Set Up Virtual Key": "Configurar la llave virtual", + "Pair a virtual key with your vehicle in the Tesla app": "Vincule una llave virtual con su vehículo en la app de Tesla", + "🔐 This action happens entirely in the Tesla app. Once finished, return to SentryGuard to continue.": "🔐 Esta acción se realiza por completo en la app de Tesla. Una vez finalizada, vuelva a SentryGuard para continuar.", + "How to pair a virtual key:": "Cómo vincular una llave virtual:", + "Click \"Open Tesla App\" button below": "Haga clic en el botón «Abrir la app de Tesla» que aparece a continuación", + "The Tesla app will open and show a confirmation dialog": "La app de Tesla se abrirá y mostrará un cuadro de diálogo de confirmación", + "Approve the virtual key request in the Tesla app": "Apruebe la solicitud de llave virtual en la app de Tesla", + "Return to SentryGuard to continue setup": "Vuelva a SentryGuard para continuar con la configuración", + "Open Tesla App": "Abrir la app de Tesla", + "I've opened the Tesla app": "He abierto la app de Tesla", + "I've linked my Telegram": "He vinculado mi Telegram", + "⏱️ Once you've opened the Tesla app and approved the virtual key, click the button above to continue.": "⏱️ Una vez que haya abierto la app de Tesla y aprobado la llave virtual, haga clic en el botón de arriba para continuar.", + "Confirm Virtual Key Setup": "Confirme la configuración de la llave virtual", + "Verify that the virtual key was paired successfully": "Compruebe que la llave virtual se ha vinculado correctamente", + "✅ Virtual key detected!": "✅ ¡Llave virtual detectada!", + "⏳ Waiting for you to complete the virtual key setup in the Tesla app...": "⏳ Esperando a que complete la configuración de la llave virtual en la app de Tesla...", + "No virtual key was detected. Please complete the setup in the Tesla app and try again.": "No se ha detectado ninguna llave virtual. Complete la configuración en la app de Tesla y vuelva a intentarlo.", + "Failed to check virtual key status. Please try again.": "Error al comprobar el estado de la llave virtual. Vuelva a intentarlo.", + "What to expect:": "Qué esperar:", + "You approved the virtual key in the Tesla app": "Ha aprobado la llave virtual en la app de Tesla", + "The key is now paired with your vehicle account": "La llave ya está vinculada a la cuenta de su vehículo", + "You can now enable telemetry monitoring": "Ahora puede activar la monitorización de la telemetría", + "I've completed the Tesla app setup": "He completado la configuración en la app de Tesla", + "Checking...": "Comprobando...", + "The button will check your vehicle for the paired virtual key": "El botón comprobará si su vehículo tiene la llave virtual vinculada", + "Continue to Next Step": "Continuar al siguiente paso", + "Start monitoring your vehicle's Sentry Mode in real-time": "Empiece a monitorizar el Sentry Mode de su vehículo en tiempo real", + "No vehicles found. Please refresh or check your Tesla account.": "No se han encontrado vehículos. Actualice o compruebe su cuenta de Tesla.", + "📡 Telemetry monitoring is battery-efficient and uses Tesla's official API. You can enable it for one or more vehicles. You'll receive alerts via Telegram for each enabled vehicle.": "📡 La monitorización de la telemetría es eficiente con la batería y utiliza la API oficial de Tesla. Puede activarla para uno o varios vehículos. Recibirá alertas a través de Telegram por cada vehículo activado.", + "Complete Onboarding": "Completar la incorporación", + "Enable telemetry for at least one vehicle to complete setup": "Active la telemetría de al menos un vehículo para finalizar la configuración", + "Setup Wizard": "Asistente de configuración", + "Setup Complete!": "¡Configuración completada!", + "Your SentryGuard is now fully configured. You will receive instant Telegram alerts when suspicious activity is detected.": "Su SentryGuard ya está completamente configurado. Recibirá alertas instantáneas de Telegram cuando se detecte actividad sospechosa.", + "Go to Dashboard": "Ir al panel de control", + "Skip for now": "Omitir por ahora", + "Skipping...": "Omitiendo...", + "Completing...": "Finalizando...", + "Activating...": "Activando...", + "Activate Telemetry": "Activar la telemetría", + "✅ Telemetry enabled! Your setup is complete.": "✅ ¡Telemetría activada! Su configuración se ha completado.", + "You will now receive instant Telegram alerts when suspicious activity is detected.": "A partir de ahora recibirá alertas instantáneas de Telegram cuando se detecte actividad sospechosa.", + "What is the purpose of pairing a virtual key with SentryGuard?": "¿Para qué sirve vincular una llave virtual con SentryGuard?", + "Virtual key purpose explanation": "La llave virtual vinculada con su vehículo es el identificador seguro de SentryGuard. Permite que su Tesla verifique que los mensajes de configuración de telemetría provienen realmente de SentryGuard. Esto proporciona una capa de seguridad adicional más allá del token de autenticación generado al conectarse por primera vez con Tesla. Su vehículo verifica tanto que usted (el propietario) ha concedido permisos a SentryGuard como que es realmente SentryGuard quien utiliza esos permisos, y no un acceso comprometido o robado.", + "Does SentryGuard work without internet connection?": "¿Funciona SentryGuard sin conexión a internet?", + "Internet connection requirement explanation": "No, se necesita acceso a internet para que SentryGuard funcione. Cuando se produce un evento del Sentry Mode, su Tesla necesita conexión a internet (mediante WiFi o red móvil) para enviar los datos del evento a nuestros servidores, que a su vez le reenvían la alerta a través de Telegram. Si su vehículo se encuentra en un lugar sin acceso a internet (como un aparcamiento subterráneo o un país donde la conectividad de Tesla no está disponible), las alertas no pueden enviarse hasta que el vehículo se reconecte a internet.", + "Why does the app crash when I use browser translation?": "¿Por qué se bloquea la aplicación cuando uso la traducción del navegador?", + "Browser translation issue explanation": "El uso de la función de traducción automática de su navegador (como «Traducir esta página» de Chrome o funciones similares en otros navegadores) puede provocar que la aplicación se bloquee o se comporte de forma inesperada. SentryGuard ya admite varios idiomas de forma nativa. En lugar de usar la traducción del navegador, utilice el selector de idioma en la barra de navegación de la aplicación para cambiar entre inglés y francés. Esto garantiza una experiencia estable sin problemas técnicos.", + "meta.home.title": "SentryGuard - Proteja su Tesla", + "meta.home.description": "Monitorización en tiempo real y alertas instantáneas de Telegram para el Sentry Mode de su vehículo Tesla. Eficiente con la batería, seguro y de código abierto.", + "meta.home.ogDescription": "Monitorización en tiempo real y alertas instantáneas de Telegram para el Sentry Mode de su vehículo Tesla.", + "meta.faq.title": "Preguntas frecuentes - SentryGuard", + "meta.faq.description": "Preguntas frecuentes sobre SentryGuard. Descubra cómo proteger su Tesla con la monitorización del Sentry Mode en tiempo real y las alertas de Telegram.", + "meta.faq.ogDescription": "Preguntas frecuentes sobre la monitorización de Tesla de SentryGuard.", + "Break-in Monitoring": "Monitorización de intrusiones", + "Enable Break-in": "Activar intrusiones", + "Disable Break-in": "Desactivar intrusiones", + "Failed to update Break-in monitoring": "Error al actualizar la monitorización de intrusiones", + "Offensive Response": "Respuesta ofensiva", + "offensiveResponseOn": "Claxon activado", + "offensiveResponseOff": "Claxon desactivado", + "offensiveResponseInfo": "Cuando se activa una alerta, el vehículo hará sonar su claxon o un pedo durante unos segundos.", + "Horn": "Claxon", + "Fart": "Pedo", + "offensiveResponseHonk": "Claxon activado para las alertas de intrusión.", + "offensiveResponseFart": "Pedo (boombox) activado para las alertas de intrusión.", + "offensiveResponseDisabled": "Desactivado.", + "offensiveChooseDuration": "Elija la duración de la activación:", + "offensiveDuration30m": "30 min", + "offensiveDuration1h": "1 h", + "offensiveDuration2h": "2 h", + "offensiveDuration4h": "4 h", + "offensiveDuration8h": "8 h", + "offensiveDuration24h": "24 h", + "offensiveProlong": "Prolongar", + "offensiveCancel": "Cancelar", + "Failed to update offensive response": "Error al actualizar la respuesta ofensiva", + "Auto Sentry Mode": "Sentry Mode automático", + "autoSentryModeInfo": "Cuando se detecta un intento de intrusión, el Sentry Mode se activa automáticamente para que las cámaras graben.", + "Failed to update auto sentry mode": "Error al actualizar el Sentry Mode automático", + "Never miss a door ding again.": "No vuelva a perderse un golpe de puerta.", + "Get instant Telegram alerts the second your Tesla detects a threat. Zero battery drain.": "Reciba alertas instantáneas de Telegram en el mismo segundo en que su Tesla detecta una amenaza. Cero consumo de batería.", + "The Tesla App is not enough.": "La app de Tesla no es suficiente.", + "The official app only alerts you for direct threats like alarms. For everything else—like door dings or scratches—you're left in the dark until you check your car.": "La app oficial solo le avisa de amenazas directas como las alarmas. Para todo lo demás —como golpes de puerta o arañazos— se queda a oscuras hasta que comprueba su coche.", + "Without SentryGuard": "Sin SentryGuard", + "A shopping cart hits your car. The alarm doesn't trigger. The Tesla app stays silent. You find out too late.": "Un carrito de la compra golpea su coche. La alarma no se activa. La app de Tesla permanece en silencio. Se entera demasiado tarde.", + "With SentryGuard": "Con SentryGuard", + "Sentry Mode records the event. SentryGuard instantly pushes a Telegram alert to your phone. You can react immediately.": "El Sentry Mode graba el evento. SentryGuard envía al instante una alerta de Telegram a su teléfono. Puede reaccionar de inmediato.", + "How it works": "Cómo funciona", + "1. Connect your Tesla": "1. Conecte su Tesla", + "Securely link your vehicle using official Tesla OAuth. We never see your password.": "Vincule su vehículo de forma segura mediante el OAuth oficial de Tesla. Nunca vemos su contraseña.", + "2. Smart Telemetry": "2. Telemetría inteligente", + "Our servers listen to the official telemetry stream. Zero polling means absolutely zero battery drain.": "Nuestros servidores escuchan el flujo de telemetría oficial. Cero consultas significa absolutamente cero consumo de batería.", + "3. Instant Alerts": "3. Alertas instantáneas", + "Receive push notifications via our mobile app or Telegram bot the exact second Sentry Mode is triggered.": "Reciba notificaciones push a través de nuestra aplicación móvil o nuestro bot de Telegram en el segundo exacto en que se activa el Sentry Mode.", + "Support a Community Project": "Apoye un proyecto comunitario", + "SentryGuard is a 100% free, open-source project built by Tesla owners, for Tesla owners. It is maintained entirely through community donations.": "SentryGuard es un proyecto 100 % gratuito y de código abierto, creado por propietarios de Tesla para propietarios de Tesla. Se mantiene íntegramente gracias a las donaciones de la comunidad.", + "Zero Battery Impact": "Cero impacto en la batería", + "Protection that doesn't drain your battery.": "Una protección que no agota su batería.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard integrates deeply with Tesla's API to instantly alert you if someone pulls your door handle—even when Sentry Mode is completely disabled.": "¿Desactiva el Sentry Mode en casa o en el trabajo para ahorrar autonomía? Ningún problema. SentryGuard se integra a fondo con la API de Tesla para avisarle al instante si alguien tira de la manija de su puerta, incluso cuando el Sentry Mode está completamente desactivado.", + "Detects break-ins even with Sentry Mode OFF": "Detecta intrusiones incluso con el Sentry Mode DESACTIVADO", + "Total protection for your Tesla. Zero battery drain.": "Protección total para su Tesla. Cero consumo de batería.", + "Get instant Telegram alerts for door dings and break-in attempts, even when Sentry Mode is disabled.": "Reciba alertas instantáneas de Telegram por golpes de puerta e intentos de intrusión, incluso cuando el Sentry Mode está desactivado.", + "The official app only alerts you if the main alarm triggers. SentryGuard fills the critical security gaps.": "La app oficial solo le avisa si se activa la alarma principal. SentryGuard cubre las brechas de seguridad críticas.", + "The Tesla app stays silent for door dings. And if you turn off Sentry Mode to save battery, you have absolutely zero protection against break-ins.": "La app de Tesla permanece en silencio ante los golpes de puerta. Y si desactiva el Sentry Mode para ahorrar batería, no tiene absolutamente ninguna protección contra las intrusiones.", + "Get instant Telegram alerts when Sentry Mode detects a scratch, OR when someone pulls your locked door handle while Sentry Mode is completely disabled.": "Reciba alertas instantáneas de Telegram cuando el Sentry Mode detecta un arañazo, O cuando alguien tira de la manija de su puerta bloqueada mientras el Sentry Mode está completamente desactivado.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard uses advanced telemetry to instantly alert you if someone pulls your door handle—even when Sentry Mode is off.": "¿Desactiva el Sentry Mode en casa o en el trabajo para ahorrar autonomía? Ningún problema. SentryGuard utiliza telemetría avanzada para avisarle al instante si alguien tira de la manija de su puerta, incluso cuando el Sentry Mode está desactivado.", + "Connect our Telegram bot and receive push notifications the exact second a threat is detected.": "Conecte nuestro bot de Telegram y reciba notificaciones push en el segundo exacto en que se detecta una amenaza.", + "Get instant Telegram alerts for Sentry Mode events, and break-in attempts even when Sentry Mode is disabled.": "Reciba alertas instantáneas de Telegram por eventos del Sentry Mode y por intentos de intrusión, incluso cuando el Sentry Mode está desactivado.", + "Two critical features the Tesla App is missing.": "Dos funciones críticas que le faltan a la app de Tesla.", + "The official app leaves gaps in your security. We fill them with instant push notifications and Telegram alerts.": "La aplicación oficial deja lagunas en su seguridad. Las llenamos con notificaciones push instantáneas y alertas de Telegram.", + "Requires Sentry Mode ON": "Requiere el Sentry Mode ACTIVADO", + "1. Sentry Mode Alerts": "1. Alertas del Sentry Mode", + "Get notified instantly for door dings, scratches, and parking lot accidents.": "Reciba un aviso al instante de golpes de puerta, arañazos y accidentes en el aparcamiento.", + "Tesla App": "App de Tesla", + "Stays silent for minor impacts. You only discover the damage when you get back to your car.": "Permanece en silencio ante los impactos menores. Solo descubre los daños cuando vuelve a su coche.", + "Instantly pushes an alert to your phone the moment Sentry Mode triggers, so you can react immediately.": "Envía al instante una alerta a su teléfono en el momento en que se activa el Sentry Mode, para que pueda reaccionar de inmediato.", + "Works with Sentry Mode OFF": "Funciona con el Sentry Mode DESACTIVADO", + "2. Break-in Detection": "2. Detección de intrusiones", + "Alerts you if someone pulls your door handle, even when you're saving battery.": "Le avisa si alguien tira de la manija de su puerta, incluso cuando está ahorrando batería.", + "If Sentry Mode is off to save battery at home or at night, you get zero notifications if someone tries to break in.": "Si el Sentry Mode está desactivado para ahorrar batería en casa o por la noche, no recibe ninguna notificación si alguien intenta forzar la entrada.", + "Uses advanced telemetry to detect handle pulls and alert you instantly, even when Sentry Mode is disabled.": "Utiliza telemetría avanzada para detectar tirones de la manija y avisarle al instante, incluso cuando el Sentry Mode está desactivado.", + "The missing security alerts for your Tesla.": "Las alertas de seguridad que le faltan a su Tesla.", + "Get an instant push notification the second Sentry Mode records a threat, or when someone pulls your door handle—even if you disabled Sentry Mode to save battery.": "Reciba una notificación push instantánea en el segundo en que el Sentry Mode graba una amenaza, o cuando alguien tira de la manija de su puerta, incluso si ha desactivado el Sentry Mode para ahorrar batería.", + "Unlock commands": "Desbloquear comandos", + "Authorize SentryGuard to interact with your vehicle.": "Autorice a SentryGuard a interactuar con su vehículo.", + "Authorize": "Autorizar", + "offensiveResponseLockedTitle": "Se requiere autorización de comandos del vehículo", + "offensiveResponseLockedDescription": "El Sentry Mode automático y la respuesta ofensiva requieren permiso para enviar comandos a su Tesla.", + "offensiveResponseLockedButton": "Autorizar comandos del vehículo", + "Privacy Policy": "Política de privacidad", + "Terms of Service": "Condiciones del servicio", + "New features available": "Nuevas funciones disponibles", + "SentryGuard has new advanced security capabilities to better protect your Tesla.": "SentryGuard cuenta con nuevas capacidades de seguridad avanzadas para proteger mejor su Tesla.", + "Detects intrusion attempts on your vehicle. You receive an instant Telegram alert as soon as a break-in attempt is detected.": "Detecta los intentos de intrusión en su vehículo. Recibe una alerta instantánea de Telegram en cuanto se detecta un intento de intrusión.", + "Offensive Response (Horn)": "Respuesta ofensiva (claxon)", + "When the offensive response is active, your vehicle horn triggers automatically upon detection to deter intruders immediately.": "Cuando la respuesta ofensiva está activa, el claxon de su vehículo se acciona automáticamente al detectar una amenaza para disuadir a los intrusos de inmediato.", + "💡 These features are available in the Vehicles section. You can enable break-in monitoring and configure the offensive response for each vehicle independently.": "💡 Estas funciones están disponibles en la sección Vehículos. Puede activar la monitorización de intrusiones y configurar la respuesta ofensiva para cada vehículo de forma independiente.", + "Understood, let's go!": "¡Entendido, vamos allá!", + "Failed to continue, please try again": "No se ha podido continuar, inténtelo de nuevo.", + "Security Shield Configuration": "Configuración del escudo de seguridad", + "Configure the security features for this vehicle below.": "Configure a continuación las funciones de seguridad de este vehículo.", + "Receive alerts on Telegram when an intrusion is detected": "Reciba alertas en Telegram cuando se detecte una intrusión", + "Enable Sentry Mode Monitoring": "Activar la monitorización del Sentry Mode", + "Activate Sentry Mode Monitoring": "Activar la monitorización del Sentry Mode", + "✅ Security monitoring enabled! Your setup is complete.": "✅ ¡Monitorización de seguridad activada! Su configuración se ha completado.", + "Four critical features the Tesla App is missing.": "Cuatro funciones imprescindibles que faltan en la aplicación de Tesla.", + "Three critical features the Tesla App is missing.": "Tres funciones críticas que le faltan a la app de Tesla.", + "Smart Recording": "Grabación inteligente", + "3. Auto Sentry Activation": "3. Activación automática del Sentry Mode", + "Automatically wakes up Sentry Mode and starts camera recording the second a break-in attempt is detected, even if Sentry was off.": "Activa automáticamente el Sentry Mode e inicia la grabación de las cámaras en el segundo en que se detecta un intento de robo, incluso si el Sentry estaba apagado.", + "If Sentry Mode is off to save battery, cameras remain offline. You get zero video footage of the incident.": "Si el Sentry Mode está apagado para ahorrar batería, las cámaras permanecen desconectadas. No tendrá ninguna grabación de vídeo del incidente.", + "Instantly arms Sentry Mode upon handle pull or breach attempt, waking up all cameras to capture the suspect on video.": "Arma instantáneamente el Sentry Mode ante un tirón de la manija o un intento de intrusión, despertando todas las cámaras para grabar al sospechoso en vídeo.", + "4. Active Deterrent": "4. Disuasión activa", + "3. Active Deterrent": "3. Disuasión activa", + "Automatically scare off intruders by triggering your vehicle's horn or boombox sound the moment a break-in is detected.": "Ahuyente automáticamente a los intrusos accionando el claxon o el sonido boombox de su vehículo en el momento en que se detecta una intrusión.", + "Stays passive and silent. The intruder can continue their attempt without any immediate local deterrent.": "Permanece pasiva y en silencio. El intruso puede continuar con su intento sin ninguna disuasión local inmediata.", + "Triggers a loud sound deterrent within seconds to alert bystanders and scare away the intruder.": "Disuasión inteligente. Las alertas sonoras solo se activan ante amenazas reales (como tirones de la manija), lo que evita molestas falsas alarmas.", + "Active Defense": "Defensa activa", + "What is the Active Deterrent (Offensive Response) and how does it work?": "¿Qué es la Disuasión Activa (Respuesta Ofensiva) y cómo funciona?", + "Active deterrent explanation": "La Disuasión Activa es una función de seguridad que acciona automáticamente una acción sonora de su vehículo (claxon o sonido de pedo boombox) cuando se detecta una intrusión física real (como un tirón de la manija de la puerta). A diferencia de otras aplicaciones que tocan el claxon ante cualquier movimiento detectado por la cámara (lo que provoca constantes falsas alarmas), nuestro sistema utiliza la telemetría para reaccionar únicamente ante amenazas reales. Esta función es totalmente opcional, está desactivada por defecto y puede configurarse o desactivarse por completo en cualquier momento para cada vehículo desde su panel de control.", + "Do I have to grant write permissions (vehicle commands) to SentryGuard?": "¿Estoy obligado a conceder permisos de escritura (comandos del vehículo) a SentryGuard?", + "Write permissions requirement explanation": "No. SentryGuard funciona perfectamente en un modo puramente pasivo (solo lectura) si únicamente desea recibir notificaciones de alerta por Telegram. El permiso para enviar comandos de control solo se solicita y es necesario si elige explícitamente activar la función de Disuasión Activa para accionar el claxon o el sonido boombox durante una intrusión. Si no activa esta función, SentryGuard no necesita ningún acceso de escritura a su Tesla.", + "Get the app": "Obtener la aplicación", + "Get the mobile app": "Descargue la aplicación móvil", + "or": "o" +} diff --git a/apps/webapp/src/locales/it/common.json b/apps/webapp/src/locales/it/common.json new file mode 100644 index 00000000..c8358606 --- /dev/null +++ b/apps/webapp/src/locales/it/common.json @@ -0,0 +1,471 @@ +{ + "© {{year}} SentryGuard. All rights reserved.": "© {{year}} SentryGuard. Tutti i diritti riservati.", + "← Back to home": "← Torna alla home", + "⏳ Waiting for you to click the link and start the bot...": "⏳ In attesa che venga cliccato il link e avviato il bot...", + "✅ Your Telegram account is successfully linked!": "✅ Il tuo account Telegram è stato collegato correttamente!", + "About Telemetry": "Informazioni sulla telemetria", + "Additional Permissions Required": "Autorizzazioni aggiuntive richieste", + "Are you sure you want to disable telemetry for this vehicle?": "Sei sicuro di voler disattivare la telemetria per questo veicolo?", + "Are you sure you want to unlink your Telegram account?": "Sei sicuro di voler scollegare il tuo account Telegram?", + "Authenticating...": "Autenticazione in corso...", + "Authentication Failed": "Autenticazione non riuscita", + "Authentication failed {{error}}": "Autenticazione non riuscita: {{error}}", + "Authentication successful! Checking consent status...": "Autenticazione riuscita! Verifica dello stato del consenso...", + "Authentication successful! Redirecting to consent form...": "Autenticazione riuscita! Reindirizzamento al modulo di consenso...", + "Authentication successful! Redirecting to dashboard...": "Autenticazione riuscita! Reindirizzamento alla dashboard...", + "Battery-Efficient Monitoring": "Monitoraggio a basso consumo", + "Click \"Fix Permissions\" to re-authenticate with Tesla and grant the required permissions. You'll be redirected back here automatically.": "Clicca su \"Correggi autorizzazioni\" per riautenticarti con Tesla e concedere le autorizzazioni richieste. Verrai reindirizzato automaticamente qui.", + "Click \"Generate Telegram Link\" to create a unique connection link that expires in 15 minutes.": "Clicca su \"Genera link Telegram\" per creare un link di connessione univoco che scade in 15 minuti.", + "Click the link to open our Telegram bot. The bot will automatically send a /start command with your unique token.": "Clicca sul link per aprire il nostro bot Telegram. Il bot invierà automaticamente un comando /start con il tuo token univoco.", + "Configure →": "Configura →", + "Configuring...": "Configurazione in corso...", + "Confirm Connection": "Conferma la connessione", + "Connecting...": "Connessione in corso...", + "Copied!": "Copiato!", + "Copy": "Copia", + "Dashboard": "Dashboard", + "Disable": "Disattiva", + "Disable Telemetry": "Disattiva la telemetria", + "Disabled": "Disattivato", + "Disabling...": "Disattivazione in corso...", + "Enable": "Attiva", + "Enable Telemetry": "Attiva la telemetria", + "Enabled": "Attivato", + "Enabling telemetry allows SentryGuard to monitor your vehicle's Sentry Mode status in real-time. When suspicious activity is detected, you'll receive instant alerts via Telegram.": "L'attivazione della telemetria consente a SentryGuard di monitorare in tempo reale lo stato della Sentry Mode del tuo veicolo senza scaricare la batteria. Quando viene rilevata un'attività sospetta, riceverai avvisi istantanei tramite Telegram.", + "End-to-end encrypted communication with Tesla's official API. Your data stays yours.": "Comunicazione crittografata end-to-end con l'API ufficiale di Tesla. I tuoi dati restano tuoi.", + "Failed to initiate login": "Impossibile avviare l'accesso", + "Failed to configure telemetry": "Impossibile configurare la telemetria", + "Failed to enable telemetry": "Impossibile attivare la telemetria", + "Failed to disable telemetry": "Impossibile disattivare la telemetria", + "Virtual key not added to the vehicle": "Chiave virtuale non aggiunta al veicolo", + "Unsupported hardware (pre-2018 Model S/X)": "Hardware non supportato (Model S/X precedente al 2018)", + "Unsupported firmware version for telemetry": "Versione del firmware non supportata per la telemetria", + "Maximum telemetry configurations already present": "Numero massimo di configurazioni di telemetria già raggiunto", + "Vehicle skipped for an unknown reason": "Veicolo ignorato per un motivo sconosciuto", + "Vehicle skipped for an unknown reason: {{details}}": "Veicolo ignorato per un motivo sconosciuto: {{details}}", + "Fix Permissions": "Correggi autorizzazioni", + "Generate Link": "Genera link", + "Generate Telegram Link": "Genera link Telegram", + "Generating...": "Generazione in corso...", + "GitHub": "GitHub", + "How It Works": "Come funziona", + "If donations no longer cover expenses, the service may shut down, become paid (at actual cost, around $0.50/user), or be limited to current users. Your support keeps it free and open!": "Se le donazioni non coprono più le spese, il servizio potrebbe chiudere, diventare a pagamento (al costo effettivo, circa 0,50 $/utente) o essere limitato agli utenti attuali. Il tuo sostegno lo mantiene gratuito e aperto!", + "Instant Alerts": "Avvisi istantanei", + "Instant Telegram notifications": "Notifiche Telegram istantanee", + "Link your Telegram account to receive instant vehicle alerts": "Collega il tuo account Telegram per ricevere avvisi istantanei sul veicolo", + "Link your Telegram account to receive vehicle alerts.": "Collega il tuo account Telegram per ricevere avvisi sul veicolo.", + "Linked": "Collegato", + "Linked on": "Collegato il", + "Loading...": "Caricamento in corso...", + "Login Cancelled": "Accesso annullato", + "Login with Tesla": "Accedi con Tesla", + "You cancelled the Tesla login. You can try again whenever you're ready.": "Hai annullato l'accesso a Tesla. Puoi riprovare quando vuoi.", + "Logout": "Esci", + "Manage": "Gestisci", + "Manage Sentry Mode telemetry monitoring": "Gestisci il monitoraggio telemetrico della Sentry Mode per i tuoi veicoli Tesla", + "Manage Vehicles": "Gestisci veicoli", + "Model": "Modello", + "Monitor and protect your Tesla vehicles": "Monitora e proteggi i tuoi veicoli Tesla", + "Monitor Sentry Mode via telemetry without battery drain": "Monitora lo stato della Sentry Mode del tuo veicolo tramite la telemetria, senza scaricare la batteria.", + "No vehicles": "Nessun veicolo", + "No vehicles found": "Nessun veicolo trovato", + "No vehicles found in your Tesla account. They will appear here automatically once detected.": "Nessun veicolo trovato nel tuo account Tesla. Appariranno qui automaticamente una volta rilevati.", + "Not affiliated with Tesla, Inc. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Non affiliato a Tesla, Inc. Tesla e il logo Tesla sono marchi registrati di Tesla, Inc.", + "Not linked": "Non collegato", + "Offline access": "Accesso offline", + "Open in Telegram": "Apri in Telegram", + "Open Telegram": "Apri Telegram", + "OpenID authentication": "Autenticazione OpenID", + "Pair Virtual Key": "Associa chiave virtuale", + "Permission Update Required": "Aggiornamento delle autorizzazioni richiesto", + "Privacy & Security": "Privacy e sicurezza", + "Processing authentication...": "Elaborazione dell'autenticazione...", + "Protect Your Tesla": "Proteggi la tua Tesla", + "Quick Actions": "Azioni rapide", + "Re-authenticating...": "Riautenticazione in corso...", + "Real-time monitoring and instant alerts for your Tesla vehicle": "Monitoraggio in tempo reale e avvisi istantanei per il tuo veicolo Tesla", + "Real-time Sentry Mode monitoring": "Monitoraggio della Sentry Mode in tempo reale", + "Receive Alerts": "Ricevi avvisi", + "Receive real-time Telegram notifications when your vehicle's Sentry Mode is triggered.": "Ricevi notifiche Telegram in tempo reale quando la Sentry Mode del tuo veicolo viene attivata.", + "Refresh": "Aggiorna", + "Refresh Vehicles": "Aggiorna veicoli", + "Return to Home": "Torna alla home", + "Secure & Private": "Sicuro e privato", + "Secure end-to-end encryption": "Crittografia end-to-end sicura", + "Secure OAuth authentication powered by Tesla": "Autenticazione OAuth sicura gestita da Tesla", + "Send Test Message": "Invia messaggio di prova", + "Sending...": "Invio in corso...", + "SentryGuard": "SentryGuard", + "SentryGuard is a non-profit, open-source project built by the community for Tesla owners. It depends on donations to cover server and development costs.": "SentryGuard è un progetto open-source senza scopo di lucro creato dalla community per i proprietari di Tesla. Dipende dalle donazioni per coprire i costi dei server e di sviluppo.", + "SentryGuard is a non-profit, open-source project developed by the community for Tesla owners.": "SentryGuard è un progetto open-source senza scopo di lucro sviluppato dalla community per i proprietari di Tesla.", + "SentryGuard needs additional permissions to work properly": "SentryGuard necessita di autorizzazioni aggiuntive per funzionare correttamente", + "Setup": "Configurazione", + "Success!": "Operazione riuscita!", + "Support SentryGuard": "Sostieni SentryGuard", + "Telegram": "Telegram", + "Telegram Alerts": "Avvisi Telegram", + "Telegram Configuration": "Configurazione Telegram", + "Telemetry Enabled": "Telemetria attivata", + "Tesla Authorization Revoked": "Autorizzazione Tesla revocata", + "Tesla security policies required re-authorization": "Le politiche di sicurezza di Tesla hanno richiesto una nuova autorizzazione", + "Telemetry monitors Sentry Mode and sends alerts without draining battery": "SentryGuard utilizza la telemetria per monitorare lo stato della Sentry Mode del tuo veicolo e invia avvisi Telegram istantanei quando viene rilevata un'attività sospetta. Un monitoraggio efficiente che non scarica la batteria.", + "Sentry Mode Monitoring": "Monitoraggio della Sentry Mode", + "Test message sent! Check your Telegram.": "Messaggio di prova inviato! Controlla il tuo Telegram.", + "This link expires in {{minutes}} minutes": "Questo link scade tra {{minutes}} minuti", + "To continue using SentryGuard, please reconnect your Tesla account.": "Per continuare a utilizzare SentryGuard, riconnetti il tuo account Tesla.", + "Unlink": "Scollega", + "Unlinking...": "Scollegamento in corso...", + "User profile data": "Dati del profilo utente", + "Vehicle telemetry data": "Dati di telemetria del veicolo", + "Vehicles": "Veicoli", + "View all →": "Visualizza tutto →", + "VIN": "VIN", + "Virtual Key Not Paired": "Chiave virtuale non associata", + "Virtual Key Paired": "Chiave virtuale associata", + "Welcome back": "Bentornato", + "You need to pair your Tesla account with a virtual key to use SentryGuard.": "Devi associare il tuo account Tesla a una chiave virtuale per utilizzare SentryGuard.", + "You're all set! You'll now receive instant Telegram notifications when your vehicle's Sentry Mode is triggered.": "È tutto pronto! D'ora in poi riceverai notifiche Telegram istantanee quando la Sentry Mode del tuo veicolo viene attivata.", + "Your account will be linked instantly. Return to this page to see the confirmation and send a test message.": "Il tuo account verrà collegato immediatamente. Torna a questa pagina per vedere la conferma e inviare un messaggio di prova.", + "Your Telegram account is connected. You will receive alerts here.": "Il tuo account Telegram è connesso. Riceverai gli avvisi qui.", + "Your Telegram chat ID is securely stored and only used to send you vehicle alerts. You can unlink your account at any time, and all associated data will be removed.": "Il tuo ID chat Telegram è archiviato in modo sicuro e utilizzato esclusivamente per inviarti avvisi sul veicolo. Puoi scollegare il tuo account in qualsiasi momento e tutti i dati associati verranno rimossi.", + "Your Telegram Link": "Il tuo link Telegram", + "Your Tesla account is successfully paired with a virtual key.": "Il tuo account Tesla è stato associato correttamente a una chiave virtuale.", + "Your Tesla account needs additional permissions to use SentryGuard": "Il tuo account Tesla necessita di autorizzazioni aggiuntive per utilizzare SentryGuard", + "Your Tesla account access has been removed. This typically happens when:": "L'accesso al tuo account Tesla è stato rimosso. Questo si verifica generalmente quando:", + "You removed SentryGuard from your Tesla account": "Hai rimosso SentryGuard dal tuo account Tesla", + "You changed your Tesla account password": "Hai modificato la password del tuo account Tesla", + "Your session has expired. Please log in again.": "La tua sessione è scaduta. Effettua nuovamente l'accesso.", + "Your Vehicles": "I tuoi veicoli", + "Your vehicles will appear here once they are synced from your Tesla account. Visit the Vehicles page to refresh.": "I tuoi veicoli appariranno qui una volta sincronizzati dal tuo account Tesla. Visita la pagina Veicoli per aggiornare.", + "Something went wrong": "Si è verificato un errore", + "We encountered an unexpected error. Please try refreshing the page.": "Si è verificato un errore imprevisto. Prova ad aggiornare la pagina.", + "Try Again": "Riprova", + "Reloading...": "Ricaricamento in corso...", + "If the problem persists, please contact support.": "Se il problema persiste, contatta l'assistenza.", + "Tesla Fleet API Consent": "Consenso API Fleet Tesla", + "Please read and accept the terms below to continue": "Leggi e accetta i termini di seguito per continuare", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Firmando o accettando questo modulo, acconsenti al trattamento dei tuoi Dati Personali da parte di SentryGuardOrg (\"Partner\") nell'ambito dell'applicazione del Partner denominata SentryGuard (l'\"App\").", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "Il Partner è il titolare del trattamento responsabile del trattamento dei tuoi Dati Personali nell'ambito dell'App.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Firmando o accettando questo modulo, riconosci inoltre di aver ricevuto l'Informativa sulla privacy dei clienti Tesla disponibile all'indirizzo", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(\"Informativa sulla privacy Tesla\") e acconsenti al trattamento dei Dati Personali da parte di Tesla in conformità con l'Informativa sulla privacy Tesla.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (e.g., event detection, Sentry Mode alerts).": "L'App ti consente di usufruire di funzionalità avanzate di monitoraggio e notifica basate sulla Sentry Mode del tuo veicolo Tesla, inclusa l'identificazione e la registrazione di eventi di sicurezza (ad esempio rilevamento di eventi, avvisi della Sentry Mode).", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events) and metadata associated with Sentry Mode events (date/time, event type).": "Per fornire queste funzionalità, il Partner deve trattare alcuni dei tuoi Dati Personali, che possono includere:\n\n- informazioni di profilo (identificativo dell'account, nome visualizzato o indirizzo e-mail, necessari per associare gli eventi al tuo account);\n\n- informazioni minime sul veicolo necessarie al funzionamento dell'App, tra cui l'identificativo del veicolo (VIN o equivalente), lo stato della Sentry Mode (attivazione, eventi rilevati) e i metadati associati agli eventi della Sentry Mode (data/ora, tipo di evento).", + "Partner does not access or process other categories of data from your vehicle (e.g., remote commands, detailed driving data, battery or precise location information), beyond what is strictly necessary for the App to function as described above.": "Il Partner non accede né tratta altre categorie di dati provenienti dal tuo veicolo (ad esempio comandi a distanza, dati di guida dettagliati, informazioni sulla batteria o sulla posizione precisa), oltre a quanto strettamente necessario al funzionamento dell'App come descritto sopra.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "Il Partner utilizzerà queste informazioni esclusivamente per:\n\n(a) fornirti le funzionalità di monitoraggio e notifica relative alla Sentry Mode;\n\n(b) associare gli eventi della Sentry Mode al tuo account utente e al tuo veicolo;\n\n(c) migliorare l'affidabilità e la sicurezza del servizio (ad esempio diagnostica di incidenti tecnici);\n\n(d) adempiere agli obblighi di legge applicabili, ove pertinente.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "Il Partner adotta misure di protezione amministrative, tecniche e fisiche progettate per proteggere i Dati Personali da distruzione, perdita, alterazione, accesso, divulgazione o uso accidentali, illeciti o non autorizzati, inclusa la crittografia dei dati in transito e, ove appropriato, a riposo. Il Partner conserverà i tuoi Dati Personali solo per il tempo necessario a fornirti l'App e le funzionalità descritte sopra, salvo diversa richiesta o autorizzazione prevista dalla legge applicabile o nel caso in cui tu richieda la cancellazione anticipata.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "L'App è fornita \"così com'è\" e \"secondo disponibilità\", senza alcuna garanzia di alcun tipo. SentryGuard e i suoi autori declinano ogni responsabilità per qualsiasi danno diretto, indiretto, incidentale, speciale o consequenziale, inclusi a titolo esemplificativo ma non esaustivo i danni al veicolo, la perdita di dati o le interruzioni del servizio, derivanti dall'uso o dall'impossibilità di utilizzare l'App. L'utente si assume la piena ed esclusiva responsabilità dell'uso dell'App e di qualsiasi azione automatizzata configurata (come l'attivazione del clacson).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "Fatta salva la legge applicabile (incluso il GDPR), potresti avere il diritto di richiedere l'accesso e di ricevere informazioni sui tuoi Dati Personali, di aggiornare e correggere eventuali inesattezze e di richiederne la cancellazione quando ne ricorrano le condizioni legali. Hai inoltre il diritto di revocare il tuo consenso in qualsiasi momento, senza costi, il che può tuttavia limitare o impedire l'uso dell'App.\n\nPer esercitare i tuoi diritti, revocare il tuo consenso o ottenere maggiori informazioni sull'App e sul trattamento dei tuoi Dati Personali, puoi contattare il Partner all'indirizzo: hello@sentryguard.org.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Acconsento alla raccolta, all'uso e al trattamento dei miei Dati Personali come descritto sopra.", + "I Accept": "Accetto", + "Processing...": "Elaborazione in corso...", + "Consent accepted successfully!": "Consenso accettato con successo!", + "Accepted at: {{date}}": "Accettato il: {{date}}", + "Redirecting to dashboard...": "Reindirizzamento alla dashboard...", + "By clicking \"I Accept\", you agree to the terms above and consent to the processing of your personal data.": "Cliccando su \"Accetto\", accetti i termini sopra indicati e acconsenti al trattamento dei tuoi dati personali.", + "Revoke Consent": "Revoca il consenso", + "Are you sure you want to revoke your consent? This will permanently delete your account and all associated data, including telemetry configurations.": "Sei sicuro di voler revocare il tuo consenso? Questa operazione eliminerà definitivamente il tuo account e tutti i dati associati, incluse le configurazioni di telemetria.", + "Loading consent text...": "Caricamento del testo del consenso...", + "Failed to load consent text": "Impossibile caricare il testo del consenso", + "Frequently Asked Questions": "Domande frequenti", + "Find answers to common questions about SentryGuard": "Trova le risposte alle domande più comuni su SentryGuard", + "General Questions": "Domande generali", + "What is SentryGuard?": "Che cos'è SentryGuard?", + "SentryGuard is a non-profit, open-source service that monitors your Tesla vehicle's Sentry Mode status in real-time and sends instant alerts via Telegram when suspicious activity is detected. It uses Tesla's official API and telemetry to provide efficient monitoring without draining your battery.": "SentryGuard è un servizio open-source senza scopo di lucro che monitora in tempo reale lo stato della Sentry Mode del tuo veicolo Tesla e invia avvisi istantanei tramite Telegram quando viene rilevata un'attività sospetta. Utilizza l'API ufficiale di Tesla e la telemetria per offrire un monitoraggio efficiente senza scaricare la batteria.", + "Is SentryGuard free?": "SentryGuard è gratuito?", + "Yes, SentryGuard is completely free to use. However, it depends on donations to cover server and development costs. If donations no longer cover expenses, the service may need to adapt, but we strive to keep it free and open-source for the community.": "Sì, SentryGuard è completamente gratuito. Tuttavia, dipende dalle donazioni per coprire i costi dei server e di sviluppo. Se le donazioni non coprono più le spese, il servizio potrebbe dover adattarsi, ma ci impegniamo a mantenerlo gratuito e open-source per la community.", + "Is SentryGuard affiliated with Tesla?": "SentryGuard è affiliato a Tesla?", + "No, SentryGuard is not affiliated with Tesla, Inc. It is an independent, community-driven project. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "No, SentryGuard non è affiliato a Tesla, Inc. È un progetto indipendente, gestito dalla community. Tesla e il logo Tesla sono marchi registrati di Tesla, Inc.", + "How does SentryGuard work?": "Come funziona SentryGuard?", + "SentryGuard uses Tesla's official Fleet API to monitor your vehicle's Sentry Mode status via telemetry. When Sentry Mode is triggered, you receive instant notifications through Telegram. The monitoring is battery-efficient as it uses telemetry data rather than constantly polling your vehicle.": "SentryGuard utilizza l'API Fleet ufficiale di Tesla per monitorare lo stato della Sentry Mode del tuo veicolo tramite la telemetria. Quando la Sentry Mode viene attivata, ricevi notifiche istantanee tramite Telegram. Il monitoraggio è a basso consumo perché utilizza i dati di telemetria invece di interrogare costantemente il veicolo.", + "Setup & Configuration": "Installazione e configurazione", + "How do I get started with SentryGuard?": "Come inizio a usare SentryGuard?", + "To get started, click \"Login with Tesla\" on the homepage. You'll be redirected to Tesla's official authentication page. After logging in and granting permissions, you'll need to accept the consent form, then configure Telegram alerts and enable telemetry for your vehicles.": "Per iniziare, clicca su \"Accedi con Tesla\" nella homepage. Verrai reindirizzato alla pagina di autenticazione ufficiale di Tesla. Dopo aver effettuato l'accesso e concesso le autorizzazioni, dovrai accettare il modulo di consenso, quindi configurare gli avvisi Telegram e attivare la telemetria per i tuoi veicoli.", + "What permissions does SentryGuard need?": "Quali autorizzazioni richiede SentryGuard?", + "SentryGuard requires access to your vehicle's telemetry data to monitor Sentry Mode status. It does not access location data, battery details, or remote commands beyond what is necessary for monitoring Sentry Mode events.": "SentryGuard richiede l'accesso ai dati di telemetria del tuo veicolo per monitorare lo stato della Sentry Mode. Non accede ai dati di posizione, ai dettagli della batteria o ai comandi a distanza oltre a quanto necessario per il monitoraggio degli eventi della Sentry Mode.", + "How do I link my Telegram account?": "Come collego il mio account Telegram?", + "Go to the Telegram Configuration page in your dashboard, click \"Generate Telegram Link\", and open the link in Telegram. The bot will automatically link your account. The link expires in 15 minutes for security.": "Vai alla pagina Configurazione Telegram nella tua dashboard, clicca su \"Genera link Telegram\" e apri il link in Telegram. Il bot collegherà automaticamente il tuo account. Il link scade dopo 15 minuti per motivi di sicurezza.", + "What if I can't enable telemetry for my vehicle?": "Cosa devo fare se non riesco ad attivare la telemetria per il mio veicolo?", + "Some vehicles may not support telemetry due to hardware limitations (pre-2018 Model S/X) or firmware versions. Make sure your vehicle has a virtual key paired and is running a supported firmware version. If issues persist, check the error message for specific details.": "Alcuni veicoli potrebbero non supportare la telemetria a causa di limitazioni hardware (Model S/X precedenti al 2018) o di versioni del firmware. Assicurati che il tuo veicolo abbia una chiave virtuale associata e che esegua una versione del firmware supportata. Se i problemi persistono, controlla il messaggio di errore per dettagli specifici.", + "Security & Privacy": "Sicurezza e privacy", + "Is my data secure?": "I miei dati sono al sicuro?", + "Yes, SentryGuard uses Tesla's official API with end-to-end encryption. Your data is stored securely and only used to provide monitoring and alert services. We only access the minimal data necessary for Sentry Mode monitoring.": "Sì, SentryGuard utilizza l'API ufficiale di Tesla con crittografia end-to-end. I tuoi dati sono archiviati in modo sicuro e utilizzati esclusivamente per fornire servizi di monitoraggio e avviso. Accediamo solo ai dati minimi necessari per il monitoraggio della Sentry Mode.", + "What data does SentryGuard collect?": "Quali dati raccoglie SentryGuard?", + "SentryGuard only collects: profile information (account identifier, display name or email), minimal vehicle information (VIN, Sentry Mode status, event metadata). We do not access location data, detailed driving data, battery information, or remote commands beyond what is necessary for Sentry Mode monitoring.": "SentryGuard raccoglie solo: informazioni di profilo (identificativo dell'account, nome visualizzato o e-mail), informazioni minime sul veicolo (VIN, stato della Sentry Mode, metadati degli eventi). Non accediamo ai dati di posizione, ai dati di guida dettagliati, alle informazioni sulla batteria o ai comandi a distanza oltre a quanto necessario per il monitoraggio della Sentry Mode.", + "Can I delete my data?": "Posso eliminare i miei dati?", + "Yes, you can unlink your Telegram account and revoke your consent at any time. This will remove all associated data. You can also contact us at hello@sentryguard.org to request data deletion.": "Sì, puoi scollegare il tuo account Telegram e revocare il tuo consenso in qualsiasi momento. Questa operazione rimuoverà tutti i dati associati. Puoi anche contattarci all'indirizzo hello@sentryguard.org per richiedere la cancellazione dei dati.", + "Where is my data stored?": "Dove vengono archiviati i miei dati?", + "Your data is stored on secure servers with encryption in transit and at rest. We maintain administrative, technical, and physical safeguards to protect your personal data.": "I tuoi dati sono archiviati su server sicuri con crittografia in transito e a riposo. Adottiamo misure di protezione amministrative, tecniche e fisiche per proteggere i tuoi dati personali.", + "Troubleshooting": "Risoluzione dei problemi", + "I'm not receiving Telegram alerts. What should I do?": "Non ricevo gli avvisi Telegram. Cosa devo fare?", + "First, verify that your Telegram account is linked correctly. Send a test message from the Telegram Configuration page. Make sure telemetry is enabled for your vehicle and that Sentry Mode is active on your Tesla. Check that you haven't blocked the Telegram bot.": "Per prima cosa, verifica che il tuo account Telegram sia collegato correttamente. Invia un messaggio di prova dalla pagina Configurazione Telegram. Assicurati che la telemetria sia attivata per il tuo veicolo e che la Sentry Mode sia attiva sulla tua Tesla. Controlla di non aver bloccato il bot Telegram.", + "Why did my Tesla authorization get revoked?": "Perché la mia autorizzazione Tesla è stata revocata?", + "Tesla authorization can be revoked if you remove SentryGuard from your Tesla account, change your Tesla password, or if Tesla security policies require re-authorization. Simply log in again to restore access.": "L'autorizzazione Tesla può essere revocata se rimuovi SentryGuard dal tuo account Tesla, modifichi la password Tesla o se le politiche di sicurezza di Tesla richiedono una nuova autorizzazione. Effettua semplicemente di nuovo l'accesso per ripristinare l'accesso.", + "SentryGuard shows \"Virtual Key Not Paired\". What does this mean?": "SentryGuard mostra \"Chiave virtuale non associata\". Cosa significa?", + "You need to pair a virtual key with your vehicle to use SentryGuard. This is done through the Tesla app. Go to Security & Drivers in your Tesla app and add SentryGuard as a key. Then return to SentryGuard and refresh your vehicles.": "Devi associare una chiave virtuale al tuo veicolo per utilizzare SentryGuard. Questo si fa tramite l'app Tesla. Vai su Sicurezza e conducenti nella tua app Tesla e aggiungi SentryGuard come chiave. Quindi torna su SentryGuard e aggiorna i tuoi veicoli.", + "Can I use SentryGuard with multiple vehicles?": "Posso usare SentryGuard con più veicoli?", + "Yes, SentryGuard supports multiple vehicles. Each vehicle can be configured independently. Go to the Vehicles page to manage telemetry for each vehicle.": "Sì, SentryGuard supporta più veicoli. Ogni veicolo può essere configurato in modo indipendente. Vai alla pagina Veicoli per gestire la telemetria di ciascun veicolo.", + "Support & Donations": "Supporto e donazioni", + "How can I support SentryGuard?": "Come posso sostenere SentryGuard?", + "You can support SentryGuard by making a donation through the Buy Me a Coffee widget on the website. Your support helps cover server costs and keeps the service free for everyone. You can also contribute to the project on GitHub.": "Puoi sostenere SentryGuard effettuando una donazione tramite il widget Buy Me a Coffee sul sito web. Il tuo sostegno aiuta a coprire i costi dei server e mantiene il servizio gratuito per tutti. Puoi anche contribuire al progetto su GitHub.", + "How can I report a bug or request a feature?": "Come posso segnalare un bug o richiedere una funzionalità?", + "You can report bugs or request features by opening an issue on our GitHub repository at https://github.com/abarghoud/SentryGuard. We welcome community contributions!": "Puoi segnalare bug o richiedere funzionalità aprendo una issue sul nostro repository GitHub all'indirizzo https://github.com/abarghoud/SentryGuard. Le contribuzioni della community sono benvenute!", + "Who can I contact for support?": "Chi posso contattare per l'assistenza?", + "For support, you can contact us at hello@sentryguard.org or open an issue on GitHub. We do our best to respond to all inquiries.": "Per assistenza, puoi contattarci all'indirizzo hello@sentryguard.org o aprire una issue su GitHub. Facciamo del nostro meglio per rispondere a tutte le richieste.", + "Still have questions?": "Hai ancora domande?", + "Can't find the answer you're looking for? Please feel free to contact us.": "Non trovi la risposta che cerchi? Non esitare a contattarci.", + "Contact Support": "Contatta l'assistenza", + "FAQ": "FAQ", + "Does Sentry Mode need to be activated to receive notifications?": "La Sentry Mode deve essere attivata per ricevere le notifiche?", + "Why Telegram?": "Perché Telegram?", + "Does SentryGuard impact the vehicle's battery or range?": "SentryGuard ha un impatto sulla batteria o sull'autonomia del veicolo?", + "What is SentryGuard description": "SentryGuard è un servizio open-source senza scopo di lucro che monitora in tempo reale lo stato della Sentry Mode del tuo veicolo Tesla e invia avvisi istantanei tramite Telegram quando viene rilevata un'attività sospetta. Utilizza l'API ufficiale di Tesla e la telemetria per offrire un monitoraggio efficiente senza scaricare la batteria.", + "SentryGuard requires active Sentry Mode": "Per rilevare graffi, ammaccature e movimenti nelle vicinanze, sì, la Sentry Mode deve essere attiva. Tuttavia, SentryGuard dispone anche di un sistema di rilevamento delle effrazioni che funziona anche quando la Sentry Mode è completamente disattivata.", + "Does SentryGuard protect my car when Sentry Mode is OFF?": "SentryGuard protegge la mia auto quando la Sentry Mode è disattivata?", + "Break-in detection explanation": "Sì! Anche se disattivi la Sentry Mode per risparmiare la batteria, SentryGuard monitora costantemente la telemetria del tuo veicolo. Se qualcuno tira la maniglia della tua portiera, riceverai un avviso Telegram istantaneo.", + "Can SentryGuard turn on Sentry Mode automatically during a break-in?": "SentryGuard può attivare automaticamente la Sentry Mode durante un'intrusione?", + "Auto Sentry Mode explanation": "Sì! Quando la Sentry Mode automatica è attiva nelle impostazioni del tuo veicolo, SentryGuard attiva automaticamente la Sentry Mode non appena viene rilevato un tentativo di intrusione — così le telecamere iniziano a registrare, anche se la Sentry Mode era disattivata. Questo richiede l'autorizzazione vehicle_cmds (la stessa usata per il clacson).", + "Why we chose Telegram": "Telegram offre un'API per bot potente e sicura che ci consente di inviare notifiche push istantanee in tempo reale. È incredibilmente veloce, affidabile e completamente gratuita.", + "Is there a SentryGuard mobile app?": "Esiste un’app mobile SentryGuard?", + "SentryGuard mobile app explanation": "Sì! SentryGuard è disponibile come app mobile nativa sia per iOS che per Android. Invia notifiche push istantanee nel momento in cui la Sentry Mode si attiva, e ti permette di monitorare i tuoi veicoli e consultare lo storico degli avvisi direttamente dal telefono.", + "Do I need the mobile app to receive alerts?": "Mi serve l’app mobile per ricevere gli avvisi?", + "Mobile app vs Telegram alerts": "No. Se già ricevi gli avvisi tramite Telegram, tutto continua a funzionare esattamente come prima. L’app mobile aggiunge semplicemente le notifiche push native come canale aggiuntivo, oltre a un accesso rapido alla tua dashboard quando sei in giro.", + "How do I get the SentryGuard mobile app?": "Come ottengo l’app mobile SentryGuard?", + "How to get the mobile app": "Puoi scaricare SentryGuard dall’App Store su iOS o da Google Play su Android. Vai alla <0>sezione download della nostra homepage per installarla sul tuo dispositivo.", + "Is SentryGuard free description": "Sì, SentryGuard è completamente gratuito. Tuttavia, dipende dalle donazioni per coprire i costi dei server e di sviluppo. Se le donazioni non coprono più le spese, il servizio potrebbe dover adattarsi, ma ci impegniamo a mantenerlo gratuito e open-source per la community.", + "Is SentryGuard affiliated with Tesla description": "No, SentryGuard non è affiliato a Tesla, Inc. È un progetto indipendente, gestito dalla community. Tesla e il logo Tesla sono marchi registrati di Tesla, Inc.", + "How does SentryGuard work description": "SentryGuard utilizza l'API Fleet ufficiale di Tesla per monitorare lo stato della Sentry Mode del tuo veicolo tramite la telemetria. Quando la Sentry Mode viene attivata, ricevi notifiche istantanee tramite Telegram. Il monitoraggio è a basso consumo perché utilizza i dati di telemetria invece di interrogare costantemente il veicolo.", + "How to get started with SentryGuard": "Per iniziare, clicca su \"Accedi con Tesla\" nella homepage. Verrai reindirizzato alla pagina di autenticazione ufficiale di Tesla. Dopo aver effettuato l'accesso e concesso le autorizzazioni, dovrai accettare il modulo di consenso. Quindi, nella <0>pagina Veicoli, associa una chiave virtuale al tuo veicolo (questo ti reindirizzerà al sito web di Tesla per approvare tramite l'app Tesla), <1>configura gli avvisi Telegram e attiva la telemetria per i tuoi veicoli.", + "What permissions SentryGuard needs": "SentryGuard richiede l'accesso ai dati di telemetria del tuo veicolo per monitorare lo stato della Sentry Mode. Non accede ai dati di posizione, ai dettagli della batteria o ai comandi a distanza oltre a quanto necessario per il monitoraggio degli eventi della Sentry Mode.", + "How to link Telegram account": "Vai alla <0>pagina Configurazione Telegram nella tua dashboard, clicca su \"Genera link Telegram\" e apri il link in Telegram. Il bot collegherà automaticamente il tuo account. Il link scade dopo 15 minuti per motivi di sicurezza.", + "Cannot enable telemetry help": "Alcuni veicoli potrebbero non supportare la telemetria a causa di limitazioni hardware (Model S/X precedenti al 2018) o di versioni del firmware. Assicurati che il tuo veicolo abbia una chiave virtuale associata e che esegua una versione del firmware supportata. Se i problemi persistono, controlla il messaggio di errore per dettagli specifici.", + "Is my data secure answer": "Sì, SentryGuard utilizza l'API ufficiale di Tesla con crittografia end-to-end. I tuoi dati sono archiviati in modo sicuro e utilizzati esclusivamente per fornire servizi di monitoraggio e avviso. Accediamo solo ai dati minimi necessari per il monitoraggio della Sentry Mode.", + "What data SentryGuard collects": "SentryGuard raccoglie solo: informazioni di profilo (identificativo dell'account, nome visualizzato o e-mail), informazioni minime sul veicolo (VIN, stato della Sentry Mode, metadati degli eventi). Non accediamo ai dati di posizione, ai dati di guida dettagliati, alle informazioni sulla batteria o ai comandi a distanza oltre a quanto necessario per il monitoraggio della Sentry Mode.", + "Can I delete my data answer": "Sì, puoi scollegare il tuo account Telegram e revocare il tuo consenso in qualsiasi momento. Questa operazione rimuoverà tutti i dati associati. La funzionalità di cancellazione dei dati è attualmente in fase di sviluppo. Per il momento, contattaci all'indirizzo <0>hello@sentryguard.org per richiedere la cancellazione dei dati.", + "Where is my data stored answer": "I tuoi dati sono archiviati su server sicuri situati in Europa, con crittografia in transito e a riposo. Adottiamo misure di protezione amministrative, tecniche e fisiche per proteggere i tuoi dati personali.", + "Not receiving alerts help": "Per prima cosa, verifica che il tuo account Telegram sia collegato correttamente. Invia un messaggio di prova dalla <0>pagina Configurazione Telegram. Assicurati che la telemetria sia attivata per il tuo veicolo e che la Sentry Mode sia attiva sulla tua Tesla. Controlla anche la <1>configurazione del veicolo per attivare la telemetria e impostare la chiave virtuale. Infine, controlla di non aver bloccato il bot Telegram.", + "SentryGuard battery impact": "No, SentryGuard non ha alcun impatto sulla batteria o sull'autonomia del tuo veicolo. Il servizio utilizza il sistema di telemetria di Tesla, progettato per essere estremamente efficiente. A differenza delle app di terze parti che potrebbero interrogare costantemente il tuo veicolo, SentryGuard riceve dati solo quando si verificano eventi, utilizzando una larghezza di banda minima e nessun consumo di batteria aggiuntivo dal tuo veicolo.", + "Tesla authorization revoked help": "L'autorizzazione Tesla può essere revocata se rimuovi SentryGuard dal tuo account Tesla, modifichi la password Tesla o se le politiche di sicurezza di Tesla richiedono una nuova autorizzazione. Effettua semplicemente di nuovo l'accesso per ripristinare l'accesso.", + "Virtual key not paired help": "Devi associare una chiave virtuale al tuo veicolo per utilizzare SentryGuard. Nella <0>pagina Veicoli, clicca sul pulsante \"Associa chiave virtuale\" che ti reindirizzerà al sito web di Tesla. Questo aprirà la tua app Tesla, dove potrai approvare la richiesta di chiave virtuale. Una volta approvata, torna su SentryGuard e aggiorna i tuoi veicoli.", + "Multiple vehicles support": "Sì, SentryGuard supporta più veicoli. Ogni veicolo può essere configurato in modo indipendente. Vai alla pagina Veicoli per gestire la telemetria di ciascun veicolo.", + "How to support SentryGuard": "Puoi sostenere SentryGuard effettuando una donazione tramite il widget Buy Me a Coffee sul sito web, o direttamente all'indirizzo <1>https://buymeacoffee.com/sentryguardorg. Il tuo sostegno aiuta a coprire i costi dei server e mantiene il servizio gratuito per tutti. Puoi anche contribuire al progetto su <0>GitHub aggiungendo una stella al repository, segnalando problemi o inviando pull request.", + "How to report bugs or request features": "Puoi segnalare bug o richiedere funzionalità aprendo una issue sul nostro <0>repository GitHub o contattandoci tramite la chat di supporto sul sito web. Le contribuzioni della community sono benvenute!", + "Who to contact for support": "Per assistenza, puoi contattarci all'indirizzo <0>hello@sentryguard.org, aprire una issue su <1>GitHub o utilizzare la chat di supporto sul sito web. Facciamo del nostro meglio per rispondere a tutte le richieste.", + "Does SentryGuard provide video footage?": "SentryGuard fornisce filmati video?", + "SentryGuard video access explanation": "SentryGuard non ha accesso ai filmati delle telecamere del tuo veicolo. Tuttavia, quando ricevi un avviso della Sentry Mode tramite Telegram, puoi cliccare sul pulsante \"Verifica\" nel messaggio per aprire direttamente l'app Tesla e visualizzare il feed live delle telecamere, così da controllare cosa ha attivato l'avviso.", + "Do I need Tesla Premium Connectivity to use SentryGuard?": "Ho bisogno della Tesla Premium Connectivity per utilizzare SentryGuard?", + "Tesla Premium Connectivity requirement": "No, non hai bisogno della Tesla Premium Connectivity per utilizzare SentryGuard. Il servizio funziona con la connettività standard di Tesla e utilizza l'API Fleet per i dati di telemetria. La connettività premium potrebbe tuttavia essere necessaria per alcune funzionalità Tesla avanzate, ma SentryGuard stesso funziona con la connettività di base del veicolo.", + "Why doesn't Sentry Mode trigger when I test it myself?": "Perché la Sentry Mode non si attiva quando la provo io stesso?", + "Sentry Mode testing explanation": "Quando provi la Sentry Mode tu stesso con il telefono nelle vicinanze, Tesla rileva la tua chiave digitale e non attiva la Sentry Mode perché riconosce un utente autorizzato. La Sentry Mode si attiva solo quando il veicolo rileva una potenziale attività non autorizzata. Per eseguire una prova corretta, usa il telefono di un'altra persona per attivare il rilevamento di movimento/telecamera, oppure prova da una distanza maggiore senza il tuo telefono presente.", + "Why is SentryGuard faster than Tesla notifications?": "Perché SentryGuard è più veloce delle notifiche Tesla?", + "SentryGuard speed advantage explanation": "SentryGuard fornisce notifiche istantanee non appena Tesla rileva un evento e inizia la registrazione, offrendoti consapevolezza immediata di potenziali incidenti di sicurezza. Al contrario, l'app di Tesla mostra il video registrato solo al termine della registrazione, e persino le notifiche dirette di Tesla arrivano diversi secondi dopo. Questo vantaggio in termini di velocità può essere cruciale per reagire rapidamente alle minacce alla sicurezza.", + "Does SentryGuard support older Model S/X vehicles?": "SentryGuard supporta i veicoli Model S/X più vecchi?", + "Legacy vehicles support explanation": "Sì! I veicoli Model S e Model X più datati (generalmente prodotti prima del 2021) che utilizzano il sistema di infotainment MCU1 o MCU2 sono pienamente supportati da SentryGuard. A differenza dei modelli più recenti, questi veicoli non supportano né richiedono l'associazione di una chiave virtuale per il funzionamento della telemetria. Puoi semplicemente attivare la telemetria direttamente, senza il passaggio di associazione.", + "Settings": "Impostazioni", + "Manage your account settings and preferences": "Gestisci le impostazioni e le preferenze del tuo account", + "Account Information": "Informazioni sull'account", + "Name": "Nome", + "Email": "Email", + "Danger Zone": "Zona pericolosa", + "Delete Account": "Elimina account", + "Delete account description": "L'eliminazione del tuo account è permanente e irreversibile. Tutti i tuoi dati, incluse le configurazioni di telemetria, gli avvisi Telegram e le informazioni sul veicolo, verranno eliminati definitivamente.", + "Delete account confirmation": "Sei sicuro di voler eliminare il tuo account? Questa azione è permanente ed eliminerà tutti i tuoi dati, incluse le configurazioni di telemetria e gli avvisi Telegram. Questa azione non può essere annullata.", + "Back to Dashboard": "Torna alla dashboard", + "You're on the Waitlist!": "Sei nella lista d'attesa!", + "Thank you for your interest in SentryGuard": "Grazie per il tuo interesse per SentryGuard", + "We have received your registration for": "Abbiamo ricevuto la tua registrazione per", + "Your account is pending approval. We'll send you an email once your account has been approved and you can start using SentryGuard.": "Il tuo account è in attesa di approvazione. Ti invieremo un'email una volta che il tuo account sarà stato approvato e potrai iniziare a utilizzare SentryGuard.", + "Approval is typically processed within 24-48 hours.": "L'approvazione viene generalmente elaborata entro 24-48 ore.", + "No email within 72 hours? Check your spam or promotions folder.": "Nessuna email entro 72 ore? Controlla la cartella spam o promozioni.", + "Back to home": "Torna alla home", + "Join our Discord community while you wait": "Unisciti alla nostra community Discord mentre aspetti!", + "Join Discord": "Unisciti a Discord", + "Waitlist": "Lista d'attesa", + "Why is there a waitlist?": "Perché c'è una lista d'attesa?", + "Why is there a waitlist answer": "SentryGuard gestisce l'accesso tramite una lista d'attesa per garantire che il servizio rimanga stabile e affidabile per tutti gli utenti. Man mano che continuiamo a crescere, la lista d'attesa ci aiuta a integrare i nuovi utenti in modo graduale.", + "How long does waitlist approval take?": "Quanto tempo richiede l'approvazione dalla lista d'attesa?", + "How long does waitlist approval take answer": "Le approvazioni degli account vengono generalmente elaborate entro 24-48 ore. Riceverai un'email di benvenuto non appena il tuo account sarà stato approvato.", + "What happens after I'm approved?": "Cosa succede dopo che sono stato approvato?", + "What happens after I'm approved answer": "Una volta approvato, riceverai un'email di benvenuto con una guida passo passo per iniziare. Avrai accesso alla tua dashboard, dove potrai configurare gli avvisi Telegram, associare una chiave virtuale al tuo veicolo e attivare il monitoraggio della telemetria.", + "I signed up but didn't receive an approval email": "Mi sono registrato ma non ho ricevuto un'email di approvazione. Cosa devo fare?", + "I signed up but didn't receive an approval email answer": "Per prima cosa, controlla le cartelle spam e promozioni. L'email di benvenuto viene inviata automaticamente una volta che il tuo account è approvato. Se hai domande sul tuo stato, contattaci all'indirizzo hello@sentryguard.org indicando il tuo indirizzo email.", + "Can I check my waitlist status?": "Posso verificare il mio stato nella lista d'attesa?", + "Can I check my waitlist status answer": "Puoi verificare il tuo stato provando ad accedere. Se vieni reindirizzato alla pagina della lista d'attesa, il tuo account è ancora in attesa di approvazione. Una volta approvato, potrai accedere normalmente alla tua dashboard.", + "Can I use SentryGuard while on the waitlist?": "Posso usare SentryGuard mentre sono nella lista d'attesa?", + "Can I use SentryGuard while on the waitlist answer": "No, dovrai attendere l'approvazione per accedere alla dashboard e utilizzare le funzionalità di SentryGuard. Nel frattempo, ti consigliamo di esplorare le nostre FAQ e la documentazione per prepararti a quando il tuo account verrà approvato.", + "What if I try to log in before being approved?": "Cosa succede se provo ad accedere prima di essere approvato?", + "What if I try to log in before being approved answer": "Verrai reindirizzato alla pagina della lista d'attesa, dove potrai vedere il tuo indirizzo email. Rimarrai nella lista d'attesa finché non approveremo il tuo account, momento in cui potrai accedere normalmente.", + "Link Your Telegram Account": "Collega il tuo account Telegram", + "You will receive instant alerts when suspicious activity is detected": "Riceverai avvisi istantanei quando viene rilevata un'attività sospetta", + "💡 You are about to open Telegram. Once you've linked your account, return to SentryGuard to continue.": "💡 Stai per aprire Telegram. Una volta collegato il tuo account, torna su SentryGuard per continuare.", + "How it works:": "Come funziona:", + "Click \"Generate Telegram Link\"": "Clicca su \"Genera link Telegram\"", + "Click the link to open Telegram": "Clicca sul link per aprire Telegram", + "The bot will automatically link your account": "Il bot collegherà automaticamente il tuo account", + "Return here and continue": "Torna qui e continua", + "Set Up Virtual Key": "Configura la chiave virtuale", + "Pair a virtual key with your vehicle in the Tesla app": "Associa una chiave virtuale al tuo veicolo nell'app Tesla", + "🔐 This action happens entirely in the Tesla app. Once finished, return to SentryGuard to continue.": "🔐 Questa azione avviene interamente nell'app Tesla. Una volta terminata, torna su SentryGuard per continuare.", + "How to pair a virtual key:": "Come associare una chiave virtuale:", + "Click \"Open Tesla App\" button below": "Clicca sul pulsante \"Apri l'app Tesla\" qui sotto", + "The Tesla app will open and show a confirmation dialog": "L'app Tesla si aprirà e mostrerà una finestra di conferma", + "Approve the virtual key request in the Tesla app": "Approva la richiesta di chiave virtuale nell'app Tesla", + "Return to SentryGuard to continue setup": "Torna su SentryGuard per continuare la configurazione", + "Open Tesla App": "Apri l'app Tesla", + "I've opened the Tesla app": "Ho aperto l'app Tesla", + "I've linked my Telegram": "Ho collegato il mio Telegram", + "⏱️ Once you've opened the Tesla app and approved the virtual key, click the button above to continue.": "⏱️ Una volta aperta l'app Tesla e approvata la chiave virtuale, clicca sul pulsante qui sopra per continuare.", + "Confirm Virtual Key Setup": "Conferma la configurazione della chiave virtuale", + "Verify that the virtual key was paired successfully": "Verifica che la chiave virtuale sia stata associata correttamente", + "✅ Virtual key detected!": "✅ Chiave virtuale rilevata!", + "⏳ Waiting for you to complete the virtual key setup in the Tesla app...": "⏳ In attesa che venga completata la configurazione della chiave virtuale nell'app Tesla...", + "No virtual key was detected. Please complete the setup in the Tesla app and try again.": "Nessuna chiave virtuale rilevata. Completa la configurazione nell'app Tesla e riprova.", + "Failed to check virtual key status. Please try again.": "Impossibile verificare lo stato della chiave virtuale. Riprova.", + "What to expect:": "Cosa aspettarsi:", + "You approved the virtual key in the Tesla app": "Hai approvato la chiave virtuale nell'app Tesla", + "The key is now paired with your vehicle account": "La chiave è ora associata all'account del tuo veicolo", + "You can now enable telemetry monitoring": "Ora puoi attivare il monitoraggio della telemetria", + "I've completed the Tesla app setup": "Ho completato la configurazione dell'app Tesla", + "Checking...": "Verifica in corso...", + "The button will check your vehicle for the paired virtual key": "Il pulsante verificherà la presenza della chiave virtuale associata sul tuo veicolo", + "Continue to Next Step": "Continua al passaggio successivo", + "Start monitoring your vehicle's Sentry Mode in real-time": "Inizia a monitorare la Sentry Mode del tuo veicolo in tempo reale", + "No vehicles found. Please refresh or check your Tesla account.": "Nessun veicolo trovato. Aggiorna o controlla il tuo account Tesla.", + "📡 Telemetry monitoring is battery-efficient and uses Tesla's official API. You can enable it for one or more vehicles. You'll receive alerts via Telegram for each enabled vehicle.": "📡 Il monitoraggio della telemetria è a basso consumo e utilizza l'API ufficiale di Tesla. Puoi attivarlo per uno o più veicoli. Riceverai avvisi tramite Telegram per ogni veicolo attivato.", + "Complete Onboarding": "Completa l'onboarding", + "Enable telemetry for at least one vehicle to complete setup": "Attiva la telemetria per almeno un veicolo per completare la configurazione", + "Setup Wizard": "Procedura guidata di configurazione", + "Setup Complete!": "Configurazione completata!", + "Your SentryGuard is now fully configured. You will receive instant Telegram alerts when suspicious activity is detected.": "Il tuo SentryGuard è ora completamente configurato. Riceverai avvisi Telegram istantanei quando viene rilevata un'attività sospetta.", + "Go to Dashboard": "Vai alla dashboard", + "Skip for now": "Salta per ora", + "Skipping...": "Salto in corso...", + "Completing...": "Completamento in corso...", + "Activating...": "Attivazione in corso...", + "Activate Telemetry": "Attiva la telemetria", + "✅ Telemetry enabled! Your setup is complete.": "✅ Telemetria attivata! La tua configurazione è completata.", + "You will now receive instant Telegram alerts when suspicious activity is detected.": "D'ora in poi riceverai avvisi Telegram istantanei quando viene rilevata un'attività sospetta.", + "What is the purpose of pairing a virtual key with SentryGuard?": "A cosa serve associare una chiave virtuale a SentryGuard?", + "Virtual key purpose explanation": "La chiave virtuale associata al tuo veicolo è l'identificativo sicuro di SentryGuard. Consente alla tua Tesla di verificare che i messaggi di configurazione della telemetria provengano realmente da SentryGuard. Questo offre un ulteriore livello di sicurezza oltre al token di autenticazione generato quando ti connetti per la prima volta con Tesla. Il tuo veicolo verifica sia che tu (il proprietario) abbia concesso le autorizzazioni a SentryGuard, sia che sia realmente SentryGuard a utilizzare tali autorizzazioni, e non un accesso compromesso o rubato.", + "Does SentryGuard work without internet connection?": "SentryGuard funziona senza connessione a internet?", + "Internet connection requirement explanation": "No, l'accesso a internet è necessario per il funzionamento di SentryGuard. Quando si verifica un evento della Sentry Mode, la tua Tesla ha bisogno di una connessione a internet (tramite WiFi o rete cellulare) per inviare i dati dell'evento ai nostri server, che a loro volta inoltrano l'avviso tramite Telegram. Se il tuo veicolo si trova in un luogo senza accesso a internet (come un parcheggio sotterraneo o un paese in cui la connettività Tesla non è disponibile), gli avvisi non possono essere inviati finché il veicolo non si riconnette a internet.", + "Why does the app crash when I use browser translation?": "Perché l'app si blocca quando utilizzo la traduzione del browser?", + "Browser translation issue explanation": "L'utilizzo della funzione di traduzione automatica del browser (come \"Traduci questa pagina\" di Chrome o funzionalità simili in altri browser) può causare il blocco dell'app o comportamenti imprevisti. SentryGuard supporta già più lingue in modo nativo. Invece di usare la traduzione del browser, utilizza il selettore di lingua nella barra di navigazione dell'applicazione per passare dall'inglese al francese. Questo garantisce un'esperienza stabile senza problemi tecnici.", + "meta.home.title": "SentryGuard - Proteggi la tua Tesla", + "meta.home.description": "Monitoraggio in tempo reale e avvisi Telegram istantanei per la Sentry Mode del tuo veicolo Tesla. A basso consumo, sicuro e open-source.", + "meta.home.ogDescription": "Monitoraggio in tempo reale e avvisi Telegram istantanei per la Sentry Mode del tuo veicolo Tesla.", + "meta.faq.title": "FAQ - SentryGuard", + "meta.faq.description": "Domande frequenti su SentryGuard. Scopri come proteggere la tua Tesla con il monitoraggio della Sentry Mode in tempo reale e gli avvisi Telegram.", + "meta.faq.ogDescription": "Domande frequenti sul monitoraggio Tesla di SentryGuard.", + "Break-in Monitoring": "Monitoraggio effrazioni", + "Enable Break-in": "Attiva monitoraggio effrazioni", + "Disable Break-in": "Disattiva monitoraggio effrazioni", + "Failed to update Break-in monitoring": "Impossibile aggiornare il monitoraggio delle effrazioni", + "Offensive Response": "Risposta offensiva", + "offensiveResponseOn": "Clacson attivato", + "offensiveResponseOff": "Clacson disattivato", + "offensiveResponseInfo": "Quando viene attivato un avviso, il veicolo suonerà il clacson o emetterà un suono per qualche secondo.", + "Horn": "Clacson", + "Fart": "Suono", + "offensiveResponseHonk": "Clacson attivato per gli avvisi di intrusione.", + "offensiveResponseFart": "Suono (boombox) attivato per gli avvisi di intrusione.", + "offensiveResponseDisabled": "Disattivato.", + "offensiveChooseDuration": "Scegli la durata di attivazione:", + "offensiveDuration30m": "30 min", + "offensiveDuration1h": "1h", + "offensiveDuration2h": "2h", + "offensiveDuration4h": "4h", + "offensiveDuration8h": "8h", + "offensiveDuration24h": "24h", + "offensiveProlong": "Prolunga", + "offensiveCancel": "Annulla", + "Failed to update offensive response": "Impossibile aggiornare la risposta offensiva", + "Auto Sentry Mode": "Sentry Mode automatica", + "autoSentryModeInfo": "Quando viene rilevato un tentativo di intrusione, la Sentry Mode si attiva automaticamente per consentire alle telecamere di registrare.", + "Failed to update auto sentry mode": "Impossibile aggiornare la Sentry Mode automatica", + "Never miss a door ding again.": "Non perdere mai più un colpo alla portiera.", + "Get instant Telegram alerts the second your Tesla detects a threat. Zero battery drain.": "Ricevi avvisi Telegram istantanei nel momento esatto in cui la tua Tesla rileva una minaccia. Zero consumo di batteria.", + "The Tesla App is not enough.": "L'app Tesla non basta.", + "The official app only alerts you for direct threats like alarms. For everything else—like door dings or scratches—you're left in the dark until you check your car.": "L'app ufficiale ti avvisa solo per le minacce dirette come gli allarmi. Per tutto il resto, come colpi alla portiera o graffi, rimani all'oscuro finché non controlli la tua auto.", + "Without SentryGuard": "Senza SentryGuard", + "A shopping cart hits your car. The alarm doesn't trigger. The Tesla app stays silent. You find out too late.": "Un carrello della spesa colpisce la tua auto. L'allarme non si attiva. L'app Tesla resta in silenzio. Te ne accorgi troppo tardi.", + "With SentryGuard": "Con SentryGuard", + "Sentry Mode records the event. SentryGuard instantly pushes a Telegram alert to your phone. You can react immediately.": "La Sentry Mode registra l'evento. SentryGuard invia istantaneamente un avviso Telegram sul tuo telefono. Puoi reagire subito.", + "How it works": "Come funziona", + "1. Connect your Tesla": "1. Collega la tua Tesla", + "Securely link your vehicle using official Tesla OAuth. We never see your password.": "Collega il tuo veicolo in tutta sicurezza tramite l'OAuth ufficiale di Tesla. Non vediamo mai la tua password.", + "2. Smart Telemetry": "2. Telemetria intelligente", + "Our servers listen to the official telemetry stream. Zero polling means absolutely zero battery drain.": "I nostri server ascoltano il flusso di telemetria ufficiale. Zero polling significa assolutamente zero consumo di batteria.", + "3. Instant Alerts": "3. Avvisi istantanei", + "Receive push notifications via our mobile app or Telegram bot the exact second Sentry Mode is triggered.": "Ricevi notifiche push tramite la nostra app mobile o il nostro bot Telegram nell’esatto momento in cui la Sentry Mode si attiva.", + "Support a Community Project": "Sostieni un progetto della community", + "SentryGuard is a 100% free, open-source project built by Tesla owners, for Tesla owners. It is maintained entirely through community donations.": "SentryGuard è un progetto open-source e gratuito al 100%, creato da proprietari di Tesla per i proprietari di Tesla. È mantenuto interamente grazie alle donazioni della community.", + "Zero Battery Impact": "Zero impatto sulla batteria", + "Protection that doesn't drain your battery.": "Una protezione che non scarica la tua batteria.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard integrates deeply with Tesla's API to instantly alert you if someone pulls your door handle—even when Sentry Mode is completely disabled.": "Disattivi la Sentry Mode a casa o al lavoro per risparmiare autonomia? Nessun problema. SentryGuard si integra profondamente con l'API di Tesla per avvisarti istantaneamente se qualcuno tira la maniglia della tua portiera, anche quando la Sentry Mode è completamente disattivata.", + "Detects break-ins even with Sentry Mode OFF": "Rileva le effrazioni anche con la Sentry Mode DISATTIVATA", + "Total protection for your Tesla. Zero battery drain.": "Protezione totale per la tua Tesla. Zero consumo di batteria.", + "Get instant Telegram alerts for door dings and break-in attempts, even when Sentry Mode is disabled.": "Ricevi avvisi Telegram istantanei per colpi alla portiera e tentativi di effrazione, anche quando la Sentry Mode è disattivata.", + "The official app only alerts you if the main alarm triggers. SentryGuard fills the critical security gaps.": "L'app ufficiale ti avvisa solo se si attiva l'allarme principale. SentryGuard colma le lacune critiche di sicurezza.", + "The Tesla app stays silent for door dings. And if you turn off Sentry Mode to save battery, you have absolutely zero protection against break-ins.": "L'app Tesla resta in silenzio per i colpi alla portiera. E se disattivi la Sentry Mode per risparmiare batteria, non hai assolutamente alcuna protezione contro le effrazioni.", + "Get instant Telegram alerts when Sentry Mode detects a scratch, OR when someone pulls your locked door handle while Sentry Mode is completely disabled.": "Ricevi avvisi Telegram istantanei quando la Sentry Mode rileva un graffio, OPPURE quando qualcuno tira la maniglia bloccata della tua portiera mentre la Sentry Mode è completamente disattivata.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard uses advanced telemetry to instantly alert you if someone pulls your door handle—even when Sentry Mode is off.": "Disattivi la Sentry Mode a casa o al lavoro per risparmiare autonomia? Nessun problema. SentryGuard utilizza una telemetria avanzata per avvisarti istantaneamente se qualcuno tira la maniglia della tua portiera, anche quando la Sentry Mode è disattivata.", + "Connect our Telegram bot and receive push notifications the exact second a threat is detected.": "Collega il nostro bot Telegram e ricevi notifiche push nel secondo esatto in cui viene rilevata una minaccia.", + "Get instant Telegram alerts for Sentry Mode events, and break-in attempts even when Sentry Mode is disabled.": "Ricevi avvisi Telegram istantanei per gli eventi della Sentry Mode e i tentativi di effrazione, anche quando la Sentry Mode è disattivata.", + "Two critical features the Tesla App is missing.": "Due funzionalità essenziali che mancano all'app Tesla.", + "The official app leaves gaps in your security. We fill them with instant push notifications and Telegram alerts.": "L’app ufficiale lascia vuoti nella tua sicurezza. Li colmiamo con notifiche push istantanee e avvisi Telegram.", + "Requires Sentry Mode ON": "Richiede la Sentry Mode ATTIVA", + "1. Sentry Mode Alerts": "1. Avvisi della Sentry Mode", + "Get notified instantly for door dings, scratches, and parking lot accidents.": "Ricevi una notifica istantanea per colpi alla portiera, graffi e incidenti nei parcheggi.", + "Tesla App": "App Tesla", + "Stays silent for minor impacts. You only discover the damage when you get back to your car.": "Resta in silenzio per gli impatti minori. Scopri il danno solo quando torni alla tua auto.", + "Instantly pushes an alert to your phone the moment Sentry Mode triggers, so you can react immediately.": "Invia istantaneamente un avviso sul tuo telefono nel momento in cui la Sentry Mode si attiva, così puoi reagire subito.", + "Works with Sentry Mode OFF": "Funziona con la Sentry Mode DISATTIVATA", + "2. Break-in Detection": "2. Rilevamento effrazioni", + "Alerts you if someone pulls your door handle, even when you're saving battery.": "Ti avvisa se qualcuno tira la maniglia della tua portiera, anche quando stai risparmiando la batteria.", + "If Sentry Mode is off to save battery at home or at night, you get zero notifications if someone tries to break in.": "Se la Sentry Mode è disattivata per risparmiare batteria a casa o di notte, non ricevi alcuna notifica se qualcuno tenta un'effrazione.", + "Uses advanced telemetry to detect handle pulls and alert you instantly, even when Sentry Mode is disabled.": "Utilizza una telemetria avanzata per rilevare se viene tirata la maniglia e avvisarti istantaneamente, anche quando la Sentry Mode è disattivata.", + "The missing security alerts for your Tesla.": "Gli avvisi di sicurezza che mancano alla tua Tesla.", + "Get an instant push notification the second Sentry Mode records a threat, or when someone pulls your door handle—even if you disabled Sentry Mode to save battery.": "Ricevi una notifica push istantanea nel momento in cui la Sentry Mode registra una minaccia, o quando qualcuno tira la maniglia della tua portiera, anche se hai disattivato la Sentry Mode per risparmiare batteria.", + "Unlock commands": "Sblocca i comandi", + "Authorize SentryGuard to interact with your vehicle.": "Autorizza SentryGuard a interagire con il tuo veicolo.", + "Authorize": "Autorizza", + "offensiveResponseLockedTitle": "Autorizzazione ai comandi del veicolo richiesta", + "offensiveResponseLockedDescription": "La Sentry Mode automatica e la risposta offensiva richiedono l'autorizzazione a inviare comandi alla tua Tesla.", + "offensiveResponseLockedButton": "Autorizza i comandi del veicolo", + "Privacy Policy": "Informativa sulla privacy", + "Terms of Service": "Termini di servizio", + "New features available": "Nuove funzionalità disponibili", + "SentryGuard has new advanced security capabilities to better protect your Tesla.": "SentryGuard dispone di nuove funzionalità di sicurezza avanzate per proteggere meglio la tua Tesla.", + "Detects intrusion attempts on your vehicle. You receive an instant Telegram alert as soon as a break-in attempt is detected.": "Rileva i tentativi di intrusione sul tuo veicolo. Ricevi un avviso Telegram istantaneo non appena viene rilevato un tentativo di effrazione.", + "Offensive Response (Horn)": "Risposta offensiva (clacson)", + "When the offensive response is active, your vehicle horn triggers automatically upon detection to deter intruders immediately.": "Quando la risposta offensiva è attiva, il clacson del tuo veicolo si attiva automaticamente al rilevamento per scoraggiare immediatamente gli intrusi.", + "💡 These features are available in the Vehicles section. You can enable break-in monitoring and configure the offensive response for each vehicle independently.": "💡 Queste funzionalità sono disponibili nella sezione Veicoli. Puoi attivare il monitoraggio delle effrazioni e configurare la risposta offensiva per ogni veicolo in modo indipendente.", + "Understood, let's go!": "Capito, iniziamo!", + "Failed to continue, please try again": "Impossibile continuare, riprova.", + "Security Shield Configuration": "Configurazione dello scudo di sicurezza", + "Configure the security features for this vehicle below.": "Configura le funzionalità di sicurezza di questo veicolo qui sotto.", + "Receive alerts on Telegram when an intrusion is detected": "Ricevi avvisi su Telegram quando viene rilevata un'intrusione", + "Enable Sentry Mode Monitoring": "Attiva il monitoraggio della Sentry Mode", + "Activate Sentry Mode Monitoring": "Attiva il monitoraggio della Sentry Mode", + "✅ Security monitoring enabled! Your setup is complete.": "✅ Monitoraggio di sicurezza attivato! La tua configurazione è completata.", + "Four critical features the Tesla App is missing.": "Quattro funzioni fondamentali che mancano all’app Tesla.", + "Three critical features the Tesla App is missing.": "Tre funzionalità essenziali che mancano all'app Tesla.", + "Smart Recording": "Registrazione intelligente", + "3. Auto Sentry Activation": "3. Attivazione automatica della Sentry Mode", + "Automatically wakes up Sentry Mode and starts camera recording the second a break-in attempt is detected, even if Sentry was off.": "Attiva automaticamente la Sentry Mode e avvia la registrazione delle telecamere nel momento in cui viene rilevato un tentativo di effrazione, anche se la Sentry era spenta.", + "If Sentry Mode is off to save battery, cameras remain offline. You get zero video footage of the incident.": "Se la Sentry Mode è spenta per risparmiare batteria, le telecamere restano offline. Non avrai nessuna ripresa video dell’accaduto.", + "Instantly arms Sentry Mode upon handle pull or breach attempt, waking up all cameras to capture the suspect on video.": "Arma istantaneamente la Sentry Mode al tiro della maniglia o a un tentativo di effrazione, risvegliando tutte le telecamere per riprendere il sospettato in video.", + "4. Active Deterrent": "4. Dissuasione attiva", + "3. Active Deterrent": "3. Deterrente attivo", + "Automatically scare off intruders by triggering your vehicle's horn or boombox sound the moment a break-in is detected.": "Scoraggia automaticamente gli intrusi attivando il clacson o il suono boombox del tuo veicolo nel momento in cui viene rilevata un'effrazione.", + "Stays passive and silent. The intruder can continue their attempt without any immediate local deterrent.": "Resta passiva e silenziosa. L'intruso può proseguire il suo tentativo senza alcun deterrente locale immediato.", + "Triggers a loud sound deterrent within seconds to alert bystanders and scare away the intruder.": "Deterrente intelligente. Gli avvisi sonori si attivano solo in caso di minacce reali (come il tiraggio della maniglia), evitando fastidiosi falsi allarmi.", + "Active Defense": "Difesa attiva", + "What is the Active Deterrent (Offensive Response) and how does it work?": "Che cos'è il Deterrente attivo (Risposta offensiva) e come funziona?", + "Active deterrent explanation": "Il Deterrente attivo è una funzionalità di sicurezza che attiva automaticamente un'azione sonora del tuo veicolo (clacson o suono boombox) quando viene rilevata un'intrusione fisica reale (come il tiraggio della maniglia di una portiera). A differenza di altre app che suonano il clacson per qualsiasi movimento rilevato dalle telecamere (causando falsi allarmi continui), il nostro sistema utilizza la telemetria per reagire solo in presenza di minacce reali. Questa funzionalità è del tutto opzionale, disattivata per impostazione predefinita e può essere configurata o disattivata in qualsiasi momento per ogni veicolo dalla tua dashboard.", + "Do I have to grant write permissions (vehicle commands) to SentryGuard?": "Sono obbligato a concedere le autorizzazioni di scrittura (comandi del veicolo) a SentryGuard?", + "Write permissions requirement explanation": "No. SentryGuard funziona perfettamente in modalità puramente passiva (sola lettura) se desideri solo ricevere notifiche di avviso tramite Telegram. L'autorizzazione a inviare comandi di controllo è richiesta e necessaria solo se scegli esplicitamente di attivare la funzionalità Deterrente attivo per far suonare il clacson o il suono boombox durante un'intrusione. Se non attivi questa funzionalità, SentryGuard non necessita di alcun accesso in scrittura alla tua Tesla.", + "Get the app": "Scarica l’app", + "Get the mobile app": "Scarica l’app mobile", + "or": "o" +} diff --git a/apps/webapp/src/locales/nl/common.json b/apps/webapp/src/locales/nl/common.json new file mode 100644 index 00000000..b2c8a0b8 --- /dev/null +++ b/apps/webapp/src/locales/nl/common.json @@ -0,0 +1,471 @@ +{ + "© {{year}} SentryGuard. All rights reserved.": "© {{year}} SentryGuard. Alle rechten voorbehouden.", + "← Back to home": "← Terug naar home", + "⏳ Waiting for you to click the link and start the bot...": "⏳ Wachten tot u op de link klikt en de bot start...", + "✅ Your Telegram account is successfully linked!": "✅ Uw Telegram-account is succesvol gekoppeld!", + "About Telemetry": "Over telemetrie", + "Additional Permissions Required": "Aanvullende machtigingen vereist", + "Are you sure you want to disable telemetry for this vehicle?": "Weet u zeker dat u telemetrie voor dit voertuig wilt uitschakelen?", + "Are you sure you want to unlink your Telegram account?": "Weet u zeker dat u uw Telegram-account wilt ontkoppelen?", + "Authenticating...": "Bezig met authenticeren...", + "Authentication Failed": "Authenticatie mislukt", + "Authentication failed {{error}}": "Authenticatie mislukt: {{error}}", + "Authentication successful! Checking consent status...": "Authenticatie geslaagd! Toestemmingsstatus controleren...", + "Authentication successful! Redirecting to consent form...": "Authenticatie geslaagd! Doorverwijzen naar toestemmingsformulier...", + "Authentication successful! Redirecting to dashboard...": "Authenticatie geslaagd! Doorverwijzen naar dashboard...", + "Battery-Efficient Monitoring": "Batterijzuinige monitoring", + "Click \"Fix Permissions\" to re-authenticate with Tesla and grant the required permissions. You'll be redirected back here automatically.": "Klik op \"Machtigingen herstellen\" om opnieuw te authenticeren met Tesla en de vereiste machtigingen te verlenen. U wordt automatisch naar deze pagina teruggeleid.", + "Click \"Generate Telegram Link\" to create a unique connection link that expires in 15 minutes.": "Klik op \"Telegram-link genereren\" om een unieke verbindingslink te maken die over 15 minuten verloopt.", + "Click the link to open our Telegram bot. The bot will automatically send a /start command with your unique token.": "Klik op de link om onze Telegram-bot te openen. De bot stuurt automatisch een /start-commando met uw unieke token.", + "Configure →": "Configureren →", + "Configuring...": "Bezig met configureren...", + "Confirm Connection": "Verbinding bevestigen", + "Connecting...": "Bezig met verbinden...", + "Copied!": "Gekopieerd!", + "Copy": "Kopiëren", + "Dashboard": "Dashboard", + "Disable": "Uitschakelen", + "Disable Telemetry": "Telemetrie uitschakelen", + "Disabled": "Uitgeschakeld", + "Disabling...": "Bezig met uitschakelen...", + "Enable": "Inschakelen", + "Enable Telemetry": "Telemetrie inschakelen", + "Enabled": "Ingeschakeld", + "Enabling telemetry allows SentryGuard to monitor your vehicle's Sentry Mode status in real-time. When suspicious activity is detected, you'll receive instant alerts via Telegram.": "Door telemetrie in te schakelen kan SentryGuard de Sentry Mode-status van uw voertuig in realtime monitoren zonder uw batterij leeg te trekken. Wanneer verdachte activiteit wordt gedetecteerd, ontvangt u direct meldingen via Telegram.", + "End-to-end encrypted communication with Tesla's official API. Your data stays yours.": "End-to-end versleutelde communicatie met de officiële API van Tesla. Uw gegevens blijven van u.", + "Failed to initiate login": "Inloggen kon niet worden gestart", + "Failed to configure telemetry": "Configureren van telemetrie mislukt", + "Failed to enable telemetry": "Inschakelen van telemetrie mislukt", + "Failed to disable telemetry": "Uitschakelen van telemetrie mislukt", + "Virtual key not added to the vehicle": "Virtuele sleutel niet toegevoegd aan het voertuig", + "Unsupported hardware (pre-2018 Model S/X)": "Niet-ondersteunde hardware (Model S/X van vóór 2018)", + "Unsupported firmware version for telemetry": "Niet-ondersteunde firmwareversie voor telemetrie", + "Maximum telemetry configurations already present": "Maximaal aantal telemetrieconfiguraties al bereikt", + "Vehicle skipped for an unknown reason": "Voertuig overgeslagen om een onbekende reden", + "Vehicle skipped for an unknown reason: {{details}}": "Voertuig overgeslagen om een onbekende reden: {{details}}", + "Fix Permissions": "Machtigingen herstellen", + "Generate Link": "Link genereren", + "Generate Telegram Link": "Telegram-link genereren", + "Generating...": "Bezig met genereren...", + "GitHub": "GitHub", + "How It Works": "Hoe het werkt", + "If donations no longer cover expenses, the service may shut down, become paid (at actual cost, around $0.50/user), or be limited to current users. Your support keeps it free and open!": "Als donaties de kosten niet langer dekken, kan de dienst worden stopgezet, betaald worden (tegen de werkelijke kostprijs, ongeveer $0,50/gebruiker), of beperkt worden tot de huidige gebruikers. Uw steun houdt het gratis en open!", + "Instant Alerts": "Directe meldingen", + "Instant Telegram notifications": "Directe Telegram-meldingen", + "Link your Telegram account to receive instant vehicle alerts": "Koppel uw Telegram-account om direct voertuigmeldingen te ontvangen", + "Link your Telegram account to receive vehicle alerts.": "Koppel uw Telegram-account om voertuigmeldingen te ontvangen.", + "Linked": "Gekoppeld", + "Linked on": "Gekoppeld op", + "Loading...": "Bezig met laden...", + "Login Cancelled": "Inloggen geannuleerd", + "Login with Tesla": "Inloggen met Tesla", + "You cancelled the Tesla login. You can try again whenever you're ready.": "U hebt het inloggen bij Tesla geannuleerd. U kunt het opnieuw proberen wanneer u er klaar voor bent.", + "Logout": "Uitloggen", + "Manage": "Beheren", + "Manage Sentry Mode telemetry monitoring": "Beheer de Sentry Mode-telemetriemonitoring voor uw Tesla-voertuigen", + "Manage Vehicles": "Voertuigen beheren", + "Model": "Model", + "Monitor and protect your Tesla vehicles": "Bewaak en bescherm uw Tesla-voertuigen", + "Monitor Sentry Mode via telemetry without battery drain": "Bewaak de Sentry Mode-status van uw voertuig via telemetrie, zonder uw batterij leeg te trekken.", + "No vehicles": "Geen voertuigen", + "No vehicles found": "Geen voertuigen gevonden", + "No vehicles found in your Tesla account. They will appear here automatically once detected.": "Geen voertuigen gevonden in uw Tesla-account. Ze verschijnen hier automatisch zodra ze worden gedetecteerd.", + "Not affiliated with Tesla, Inc. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Niet gelieerd aan Tesla, Inc. Tesla en het Tesla-logo zijn handelsmerken van Tesla, Inc.", + "Not linked": "Niet gekoppeld", + "Offline access": "Offline toegang", + "Open in Telegram": "Openen in Telegram", + "Open Telegram": "Telegram openen", + "OpenID authentication": "OpenID-authenticatie", + "Pair Virtual Key": "Virtuele sleutel koppelen", + "Permission Update Required": "Machtigingsupdate vereist", + "Privacy & Security": "Privacy en beveiliging", + "Processing authentication...": "Authenticatie verwerken...", + "Protect Your Tesla": "Bescherm uw Tesla", + "Quick Actions": "Snelle acties", + "Re-authenticating...": "Bezig met opnieuw authenticeren...", + "Real-time monitoring and instant alerts for your Tesla vehicle": "Realtime monitoring en directe meldingen voor uw Tesla-voertuig", + "Real-time Sentry Mode monitoring": "Realtime Sentry Mode-monitoring", + "Receive Alerts": "Meldingen ontvangen", + "Receive real-time Telegram notifications when your vehicle's Sentry Mode is triggered.": "Ontvang realtime Telegram-meldingen wanneer de Sentry Mode van uw voertuig wordt geactiveerd.", + "Refresh": "Vernieuwen", + "Refresh Vehicles": "Voertuigen vernieuwen", + "Return to Home": "Terug naar home", + "Secure & Private": "Veilig en privé", + "Secure end-to-end encryption": "Veilige end-to-end-versleuteling", + "Secure OAuth authentication powered by Tesla": "Veilige OAuth-authenticatie aangedreven door Tesla", + "Send Test Message": "Testbericht verzenden", + "Sending...": "Bezig met verzenden...", + "SentryGuard": "SentryGuard", + "SentryGuard is a non-profit, open-source project built by the community for Tesla owners. It depends on donations to cover server and development costs.": "SentryGuard is een non-profit, opensource-project dat door de community is gebouwd voor Tesla-eigenaren. Het is afhankelijk van donaties om de server- en ontwikkelkosten te dekken.", + "SentryGuard is a non-profit, open-source project developed by the community for Tesla owners.": "SentryGuard is een non-profit, opensource-project dat door de community is ontwikkeld voor Tesla-eigenaren.", + "SentryGuard needs additional permissions to work properly": "SentryGuard heeft aanvullende machtigingen nodig om goed te werken", + "Setup": "Configuratie", + "Success!": "Gelukt!", + "Support SentryGuard": "Steun SentryGuard", + "Telegram": "Telegram", + "Telegram Alerts": "Telegram-meldingen", + "Telegram Configuration": "Telegram-configuratie", + "Telemetry Enabled": "Telemetrie ingeschakeld", + "Tesla Authorization Revoked": "Tesla-autorisatie ingetrokken", + "Tesla security policies required re-authorization": "Het beveiligingsbeleid van Tesla vereiste een nieuwe autorisatie", + "Telemetry monitors Sentry Mode and sends alerts without draining battery": "SentryGuard gebruikt telemetrie om de Sentry Mode-status van uw voertuig te bewaken en stuurt directe Telegram-meldingen wanneer verdachte activiteit wordt gedetecteerd. Efficiënte monitoring die uw batterij niet leeg trekt.", + "Sentry Mode Monitoring": "Sentry Mode-monitoring", + "Test message sent! Check your Telegram.": "Testbericht verzonden! Controleer uw Telegram.", + "This link expires in {{minutes}} minutes": "Deze link verloopt over {{minutes}} minuten", + "To continue using SentryGuard, please reconnect your Tesla account.": "Verbind uw Tesla-account opnieuw om SentryGuard te blijven gebruiken.", + "Unlink": "Ontkoppelen", + "Unlinking...": "Bezig met ontkoppelen...", + "User profile data": "Gebruikersprofielgegevens", + "Vehicle telemetry data": "Telemetriegegevens van het voertuig", + "Vehicles": "Voertuigen", + "View all →": "Alles bekijken →", + "VIN": "VIN", + "Virtual Key Not Paired": "Virtuele sleutel niet gekoppeld", + "Virtual Key Paired": "Virtuele sleutel gekoppeld", + "Welcome back": "Welkom terug", + "You need to pair your Tesla account with a virtual key to use SentryGuard.": "U moet uw Tesla-account aan een virtuele sleutel koppelen om SentryGuard te gebruiken.", + "You're all set! You'll now receive instant Telegram notifications when your vehicle's Sentry Mode is triggered.": "Alles is ingesteld! U ontvangt nu directe Telegram-meldingen wanneer de Sentry Mode van uw voertuig wordt geactiveerd.", + "Your account will be linked instantly. Return to this page to see the confirmation and send a test message.": "Uw account wordt direct gekoppeld. Keer terug naar deze pagina om de bevestiging te zien en een testbericht te verzenden.", + "Your Telegram account is connected. You will receive alerts here.": "Uw Telegram-account is verbonden. U ontvangt hier meldingen.", + "Your Telegram chat ID is securely stored and only used to send you vehicle alerts. You can unlink your account at any time, and all associated data will be removed.": "Uw Telegram-chat-ID wordt veilig opgeslagen en uitsluitend gebruikt om u voertuigmeldingen te sturen. U kunt uw account op elk moment ontkoppelen, waarna alle bijbehorende gegevens worden verwijderd.", + "Your Telegram Link": "Uw Telegram-link", + "Your Tesla account is successfully paired with a virtual key.": "Uw Tesla-account is succesvol gekoppeld aan een virtuele sleutel.", + "Your Tesla account needs additional permissions to use SentryGuard": "Uw Tesla-account heeft aanvullende machtigingen nodig om SentryGuard te gebruiken", + "Your Tesla account access has been removed. This typically happens when:": "De toegang tot uw Tesla-account is verwijderd. Dit gebeurt doorgaans wanneer:", + "You removed SentryGuard from your Tesla account": "U SentryGuard uit uw Tesla-account hebt verwijderd", + "You changed your Tesla account password": "U het wachtwoord van uw Tesla-account hebt gewijzigd", + "Your session has expired. Please log in again.": "Uw sessie is verlopen. Log opnieuw in.", + "Your Vehicles": "Uw voertuigen", + "Your vehicles will appear here once they are synced from your Tesla account. Visit the Vehicles page to refresh.": "Uw voertuigen verschijnen hier zodra ze vanuit uw Tesla-account zijn gesynchroniseerd. Ga naar de pagina Voertuigen om te vernieuwen.", + "Something went wrong": "Er is iets misgegaan", + "We encountered an unexpected error. Please try refreshing the page.": "We zijn een onverwachte fout tegengekomen. Probeer de pagina te vernieuwen.", + "Try Again": "Opnieuw proberen", + "Reloading...": "Bezig met herladen...", + "If the problem persists, please contact support.": "Als het probleem aanhoudt, neem dan contact op met de ondersteuning.", + "Tesla Fleet API Consent": "Toestemming Tesla Fleet API", + "Please read and accept the terms below to continue": "Lees en accepteer de onderstaande voorwaarden om door te gaan", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Door dit formulier te ondertekenen of te accepteren, stemt u in met de verwerking van uw Persoonsgegevens door SentryGuardOrg (\"Partner\") in het kader van de applicatie van de Partner met de titel SentryGuard (de \"App\").", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "De Partner is de verwerkingsverantwoordelijke die verantwoordelijk is voor de verwerking van uw Persoonsgegevens in het kader van de App.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Door dit formulier te ondertekenen of te accepteren, bevestigt u tevens de ontvangst van de Tesla Privacyverklaring voor klanten, beschikbaar op", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(\"Tesla Privacyverklaring\") en stemt u in met de verwerking van Persoonsgegevens door Tesla in overeenstemming met de Tesla Privacyverklaring.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (e.g., event detection, Sentry Mode alerts).": "Met de App kunt u profiteren van geavanceerde monitoring- en meldingsfuncties op basis van de Sentry Mode van uw Tesla-voertuig, waaronder de identificatie en registratie van beveiligingsgebeurtenissen (bijv. gebeurtenisdetectie, Sentry Mode-meldingen).", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events) and metadata associated with Sentry Mode events (date/time, event type).": "Om deze functies te kunnen leveren, moet de Partner een deel van uw Persoonsgegevens verwerken, waaronder mogelijk:\n\n- profielgegevens (accountidentificatie, weergavenaam of e-mailadres, noodzakelijk om gebeurtenissen aan uw account te koppelen);\n\n- minimale voertuiggegevens die nodig zijn voor het functioneren van de App, waaronder de voertuigidentificatie (VIN of gelijkwaardig), de Sentry Mode-status (activering, gedetecteerde gebeurtenissen) en metadata die verband houden met Sentry Mode-gebeurtenissen (datum/tijd, gebeurtenistype).", + "Partner does not access or process other categories of data from your vehicle (e.g., remote commands, detailed driving data, battery or precise location information), beyond what is strictly necessary for the App to function as described above.": "De Partner heeft geen toegang tot en verwerkt geen andere categorieën gegevens van uw voertuig (bijv. opdrachten op afstand, gedetailleerde rijgegevens, batterij- of nauwkeurige locatiegegevens), buiten wat strikt noodzakelijk is voor het functioneren van de App zoals hierboven beschreven.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "De Partner zal deze informatie uitsluitend gebruiken voor:\n\n(a) het bieden van monitoring- en meldingsfuncties die verband houden met Sentry Mode;\n\n(b) het koppelen van Sentry Mode-gebeurtenissen aan uw gebruikersaccount en voertuig;\n\n(c) het verbeteren van de betrouwbaarheid en beveiliging van de dienst (bijv. diagnose van technische incidenten);\n\n(d) het naleven van toepasselijke wettelijke verplichtingen, waar van toepassing.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "De Partner handhaaft administratieve, technische en fysieke beveiligingsmaatregelen die zijn ontworpen om Persoonsgegevens te beschermen tegen accidentele, onrechtmatige of ongeoorloofde vernietiging, verlies, wijziging, toegang, openbaarmaking of gebruik, met inbegrip van versleuteling van gegevens tijdens de overdracht en, waar gepast, in rust. De Partner bewaart uw Persoonsgegevens alleen zo lang als nodig is om u de App en de hierboven beschreven functies te bieden, tenzij anders vereist of toegestaan door toepasselijk recht of indien u om vroegtijdige verwijdering verzoekt.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "De App wordt geleverd \"as is\" en \"zoals beschikbaar\", zonder enige garantie van welke aard dan ook. SentryGuard en zijn auteurs wijzen alle aansprakelijkheid af voor enige directe, indirecte, incidentele, bijzondere of gevolgschade, met inbegrip van maar niet beperkt tot schade aan het voertuig, verlies van gegevens of serviceonderbrekingen, voortvloeiend uit het gebruik van of het onvermogen om de App te gebruiken. De gebruiker draagt als enige de volledige verantwoordelijkheid voor het gebruik van de App en alle geconfigureerde geautomatiseerde acties (zoals het laten klinken van de claxon).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "Onder voorbehoud van toepasselijk recht (waaronder de AVG) kunt u het recht hebben om toegang tot uw Persoonsgegevens te vragen en informatie daarover te ontvangen, onjuistheden bij te werken en te corrigeren, en om verwijdering te verzoeken wanneer aan de wettelijke voorwaarden is voldaan. U hebt tevens het recht om uw toestemming op elk moment kosteloos in te trekken, wat het gebruik van de App echter kan beperken of verhinderen.\n\nOm uw rechten uit te oefenen, uw toestemming in te trekken of meer informatie te verkrijgen over de App en de verwerking van uw Persoonsgegevens, kunt u contact opnemen met de Partner via: hello@sentryguard.org.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Ik stem in met de verzameling, het gebruik en de verwerking van mijn Persoonsgegevens zoals hierboven beschreven.", + "I Accept": "Ik ga akkoord", + "Processing...": "Bezig met verwerken...", + "Consent accepted successfully!": "Toestemming succesvol geaccepteerd!", + "Accepted at: {{date}}": "Geaccepteerd op: {{date}}", + "Redirecting to dashboard...": "Doorverwijzen naar dashboard...", + "By clicking \"I Accept\", you agree to the terms above and consent to the processing of your personal data.": "Door op \"Ik ga akkoord\" te klikken, gaat u akkoord met de bovenstaande voorwaarden en stemt u in met de verwerking van uw persoonsgegevens.", + "Revoke Consent": "Toestemming intrekken", + "Are you sure you want to revoke your consent? This will permanently delete your account and all associated data, including telemetry configurations.": "Weet u zeker dat u uw toestemming wilt intrekken? Hiermee worden uw account en alle bijbehorende gegevens, waaronder telemetrieconfiguraties, definitief verwijderd.", + "Loading consent text...": "Toestemmingstekst laden...", + "Failed to load consent text": "Laden van toestemmingstekst mislukt", + "Frequently Asked Questions": "Veelgestelde vragen", + "Find answers to common questions about SentryGuard": "Vind antwoorden op veelgestelde vragen over SentryGuard", + "General Questions": "Algemene vragen", + "What is SentryGuard?": "Wat is SentryGuard?", + "SentryGuard is a non-profit, open-source service that monitors your Tesla vehicle's Sentry Mode status in real-time and sends instant alerts via Telegram when suspicious activity is detected. It uses Tesla's official API and telemetry to provide efficient monitoring without draining your battery.": "SentryGuard is een non-profit, opensource-dienst die de Sentry Mode-status van uw Tesla-voertuig in realtime bewaakt en directe meldingen via Telegram verstuurt wanneer verdachte activiteit wordt gedetecteerd. Het maakt gebruik van de officiële API en telemetrie van Tesla om efficiënte monitoring te bieden zonder uw batterij leeg te trekken.", + "Is SentryGuard free?": "Is SentryGuard gratis?", + "Yes, SentryGuard is completely free to use. However, it depends on donations to cover server and development costs. If donations no longer cover expenses, the service may need to adapt, but we strive to keep it free and open-source for the community.": "Ja, SentryGuard is volledig gratis te gebruiken. Het is echter afhankelijk van donaties om de server- en ontwikkelkosten te dekken. Als donaties de kosten niet langer dekken, moet de dienst zich mogelijk aanpassen, maar wij streven ernaar om het gratis en opensource te houden voor de community.", + "Is SentryGuard affiliated with Tesla?": "Is SentryGuard gelieerd aan Tesla?", + "No, SentryGuard is not affiliated with Tesla, Inc. It is an independent, community-driven project. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Nee, SentryGuard is niet gelieerd aan Tesla, Inc. Het is een onafhankelijk, door de community gedreven project. Tesla en het Tesla-logo zijn handelsmerken van Tesla, Inc.", + "How does SentryGuard work?": "Hoe werkt SentryGuard?", + "SentryGuard uses Tesla's official Fleet API to monitor your vehicle's Sentry Mode status via telemetry. When Sentry Mode is triggered, you receive instant notifications through Telegram. The monitoring is battery-efficient as it uses telemetry data rather than constantly polling your vehicle.": "SentryGuard gebruikt de officiële Fleet API van Tesla om de Sentry Mode-status van uw voertuig via telemetrie te bewaken. Wanneer Sentry Mode wordt geactiveerd, ontvangt u direct meldingen via Telegram. De monitoring is batterijzuinig omdat deze telemetriegegevens gebruikt in plaats van uw voertuig voortdurend te bevragen.", + "Setup & Configuration": "Installatie en configuratie", + "How do I get started with SentryGuard?": "Hoe ga ik aan de slag met SentryGuard?", + "To get started, click \"Login with Tesla\" on the homepage. You'll be redirected to Tesla's official authentication page. After logging in and granting permissions, you'll need to accept the consent form, then configure Telegram alerts and enable telemetry for your vehicles.": "Klik om te beginnen op \"Inloggen met Tesla\" op de homepagina. U wordt doorgestuurd naar de officiële authenticatiepagina van Tesla. Nadat u bent ingelogd en de machtigingen hebt verleend, moet u het toestemmingsformulier accepteren, vervolgens de Telegram-meldingen configureren en telemetrie voor uw voertuigen inschakelen.", + "What permissions does SentryGuard need?": "Welke machtigingen heeft SentryGuard nodig?", + "SentryGuard requires access to your vehicle's telemetry data to monitor Sentry Mode status. It does not access location data, battery details, or remote commands beyond what is necessary for monitoring Sentry Mode events.": "SentryGuard heeft toegang tot de telemetriegegevens van uw voertuig nodig om de Sentry Mode-status te bewaken. Het heeft geen toegang tot locatiegegevens, batterijgegevens of opdrachten op afstand buiten wat nodig is voor het bewaken van Sentry Mode-gebeurtenissen.", + "How do I link my Telegram account?": "Hoe koppel ik mijn Telegram-account?", + "Go to the Telegram Configuration page in your dashboard, click \"Generate Telegram Link\", and open the link in Telegram. The bot will automatically link your account. The link expires in 15 minutes for security.": "Ga naar de pagina Telegram-configuratie in uw dashboard, klik op \"Telegram-link genereren\" en open de link in Telegram. De bot koppelt automatisch uw account. De link verloopt om veiligheidsredenen na 15 minuten.", + "What if I can't enable telemetry for my vehicle?": "Wat als ik telemetrie niet kan inschakelen voor mijn voertuig?", + "Some vehicles may not support telemetry due to hardware limitations (pre-2018 Model S/X) or firmware versions. Make sure your vehicle has a virtual key paired and is running a supported firmware version. If issues persist, check the error message for specific details.": "Sommige voertuigen ondersteunen mogelijk geen telemetrie vanwege hardwarebeperkingen (Model S/X van vóór 2018) of firmwareversies. Zorg ervoor dat uw voertuig een gekoppelde virtuele sleutel heeft en een ondersteunde firmwareversie draait. Als de problemen aanhouden, raadpleeg dan het foutbericht voor specifieke details.", + "Security & Privacy": "Beveiliging en privacy", + "Is my data secure?": "Zijn mijn gegevens veilig?", + "Yes, SentryGuard uses Tesla's official API with end-to-end encryption. Your data is stored securely and only used to provide monitoring and alert services. We only access the minimal data necessary for Sentry Mode monitoring.": "Ja, SentryGuard gebruikt de officiële API van Tesla met end-to-end-versleuteling. Uw gegevens worden veilig opgeslagen en uitsluitend gebruikt om monitoring- en meldingsdiensten te leveren. Wij hebben alleen toegang tot de minimale gegevens die nodig zijn voor Sentry Mode-monitoring.", + "What data does SentryGuard collect?": "Welke gegevens verzamelt SentryGuard?", + "SentryGuard only collects: profile information (account identifier, display name or email), minimal vehicle information (VIN, Sentry Mode status, event metadata). We do not access location data, detailed driving data, battery information, or remote commands beyond what is necessary for Sentry Mode monitoring.": "SentryGuard verzamelt uitsluitend: profielgegevens (accountidentificatie, weergavenaam of e-mail), minimale voertuiggegevens (VIN, Sentry Mode-status, gebeurtenismetadata). Wij hebben geen toegang tot locatiegegevens, gedetailleerde rijgegevens, batterijgegevens of opdrachten op afstand buiten wat nodig is voor Sentry Mode-monitoring.", + "Can I delete my data?": "Kan ik mijn gegevens verwijderen?", + "Yes, you can unlink your Telegram account and revoke your consent at any time. This will remove all associated data. You can also contact us at hello@sentryguard.org to request data deletion.": "Ja, u kunt uw Telegram-account op elk moment ontkoppelen en uw toestemming intrekken. Hiermee worden alle bijbehorende gegevens verwijderd. U kunt ook contact met ons opnemen via hello@sentryguard.org om verwijdering van gegevens aan te vragen.", + "Where is my data stored?": "Waar worden mijn gegevens opgeslagen?", + "Your data is stored on secure servers with encryption in transit and at rest. We maintain administrative, technical, and physical safeguards to protect your personal data.": "Uw gegevens worden opgeslagen op beveiligde servers met versleuteling tijdens de overdracht en in rust. Wij handhaven administratieve, technische en fysieke beveiligingsmaatregelen om uw persoonsgegevens te beschermen.", + "Troubleshooting": "Problemen oplossen", + "I'm not receiving Telegram alerts. What should I do?": "Ik ontvang geen Telegram-meldingen. Wat moet ik doen?", + "First, verify that your Telegram account is linked correctly. Send a test message from the Telegram Configuration page. Make sure telemetry is enabled for your vehicle and that Sentry Mode is active on your Tesla. Check that you haven't blocked the Telegram bot.": "Controleer eerst of uw Telegram-account correct is gekoppeld. Verstuur een testbericht vanaf de pagina Telegram-configuratie. Zorg ervoor dat telemetrie is ingeschakeld voor uw voertuig en dat Sentry Mode actief is op uw Tesla. Controleer of u de Telegram-bot niet hebt geblokkeerd.", + "Why did my Tesla authorization get revoked?": "Waarom is mijn Tesla-autorisatie ingetrokken?", + "Tesla authorization can be revoked if you remove SentryGuard from your Tesla account, change your Tesla password, or if Tesla security policies require re-authorization. Simply log in again to restore access.": "De Tesla-autorisatie kan worden ingetrokken als u SentryGuard uit uw Tesla-account verwijdert, uw Tesla-wachtwoord wijzigt, of als het beveiligingsbeleid van Tesla een nieuwe autorisatie vereist. Log gewoon opnieuw in om de toegang te herstellen.", + "SentryGuard shows \"Virtual Key Not Paired\". What does this mean?": "SentryGuard toont \"Virtuele sleutel niet gekoppeld\". Wat betekent dit?", + "You need to pair a virtual key with your vehicle to use SentryGuard. This is done through the Tesla app. Go to Security & Drivers in your Tesla app and add SentryGuard as a key. Then return to SentryGuard and refresh your vehicles.": "U moet een virtuele sleutel aan uw voertuig koppelen om SentryGuard te gebruiken. Dit doet u via de Tesla-app. Ga naar Beveiliging en bestuurders in uw Tesla-app en voeg SentryGuard toe als sleutel. Keer vervolgens terug naar SentryGuard en vernieuw uw voertuigen.", + "Can I use SentryGuard with multiple vehicles?": "Kan ik SentryGuard met meerdere voertuigen gebruiken?", + "Yes, SentryGuard supports multiple vehicles. Each vehicle can be configured independently. Go to the Vehicles page to manage telemetry for each vehicle.": "Ja, SentryGuard ondersteunt meerdere voertuigen. Elk voertuig kan afzonderlijk worden geconfigureerd. Ga naar de pagina Voertuigen om de telemetrie voor elk voertuig te beheren.", + "Support & Donations": "Ondersteuning en donaties", + "How can I support SentryGuard?": "Hoe kan ik SentryGuard steunen?", + "You can support SentryGuard by making a donation through the Buy Me a Coffee widget on the website. Your support helps cover server costs and keeps the service free for everyone. You can also contribute to the project on GitHub.": "U kunt SentryGuard steunen door een donatie te doen via de Buy Me a Coffee-widget op de website. Uw steun helpt de serverkosten te dekken en houdt de dienst gratis voor iedereen. U kunt ook bijdragen aan het project op GitHub.", + "How can I report a bug or request a feature?": "Hoe kan ik een bug melden of een functie aanvragen?", + "You can report bugs or request features by opening an issue on our GitHub repository at https://github.com/abarghoud/SentryGuard. We welcome community contributions!": "U kunt bugs melden of functies aanvragen door een issue te openen in onze GitHub-repository op https://github.com/abarghoud/SentryGuard. Wij verwelkomen bijdragen van de community!", + "Who can I contact for support?": "Met wie kan ik contact opnemen voor ondersteuning?", + "For support, you can contact us at hello@sentryguard.org or open an issue on GitHub. We do our best to respond to all inquiries.": "Voor ondersteuning kunt u contact met ons opnemen via hello@sentryguard.org of een issue openen op GitHub. Wij doen ons best om op alle vragen te reageren.", + "Still have questions?": "Heeft u nog vragen?", + "Can't find the answer you're looking for? Please feel free to contact us.": "Kunt u het antwoord niet vinden dat u zoekt? Neem gerust contact met ons op.", + "Contact Support": "Contact opnemen met ondersteuning", + "FAQ": "FAQ", + "Does Sentry Mode need to be activated to receive notifications?": "Moet Sentry Mode geactiveerd zijn om meldingen te ontvangen?", + "Why Telegram?": "Waarom Telegram?", + "Does SentryGuard impact the vehicle's battery or range?": "Heeft SentryGuard invloed op de batterij of actieradius van het voertuig?", + "What is SentryGuard description": "SentryGuard is een non-profit, opensource-dienst die de Sentry Mode-status van uw Tesla-voertuig in realtime bewaakt en directe meldingen via Telegram verstuurt wanneer verdachte activiteit wordt gedetecteerd. Het maakt gebruik van de officiële API en telemetrie van Tesla om efficiënte monitoring te bieden zonder uw batterij leeg te trekken.", + "SentryGuard requires active Sentry Mode": "Voor het detecteren van krassen, deukjes en beweging in de buurt is dat zo: Sentry Mode moet actief zijn. SentryGuard beschikt echter ook over een inbraakdetectiesysteem dat zelfs werkt wanneer Sentry Mode volledig is uitgeschakeld.", + "Does SentryGuard protect my car when Sentry Mode is OFF?": "Beschermt SentryGuard mijn auto wanneer Sentry Mode UIT staat?", + "Break-in detection explanation": "Ja! Zelfs als u Sentry Mode uitschakelt om de batterij te sparen, blijft SentryGuard de telemetrie van uw voertuig continu bewaken. Als iemand aan uw deurklink trekt, ontvangt u direct een Telegram-melding.", + "Can SentryGuard turn on Sentry Mode automatically during a break-in?": "Kan SentryGuard de Sentry Mode automatisch inschakelen tijdens een inbraakpoging?", + "Auto Sentry Mode explanation": "Ja! Wanneer de automatische Sentry Mode is ingeschakeld in de instellingen van uw voertuig, activeert SentryGuard de Sentry Mode automatisch zodra een inbraakpoging wordt gedetecteerd — zo beginnen de camera's op te nemen, zelfs als de Sentry Mode uit stond. Hiervoor is de vehicle_cmds-autorisatie vereist (dezelfde als voor de claxon).", + "Why we chose Telegram": "Telegram biedt een krachtige en veilige bot-API waarmee we directe, realtime pushmeldingen kunnen leveren. Het is ongelooflijk snel, betrouwbaar en volledig gratis.", + "Is there a SentryGuard mobile app?": "Is er een mobiele SentryGuard-app?", + "SentryGuard mobile app explanation": "Ja! SentryGuard is beschikbaar als native mobiele app voor zowel iOS als Android. De app stuurt direct pushmeldingen op het moment dat Sentry Mode wordt geactiveerd, zodat u uw voertuigen kunt volgen en uw meldingengeschiedenis rechtstreeks vanaf uw telefoon kunt bekijken.", + "Do I need the mobile app to receive alerts?": "Heb ik de mobiele app nodig om meldingen te ontvangen?", + "Mobile app vs Telegram alerts": "Nee. Als u uw meldingen al via Telegram ontvangt, blijft alles precies werken zoals voorheen. De mobiele app voegt alleen native pushmeldingen toe als extra kanaal, samen met snelle toegang tot uw dashboard onderweg.", + "How do I get the SentryGuard mobile app?": "Hoe krijg ik de mobiele SentryGuard-app?", + "How to get the mobile app": "U kunt SentryGuard downloaden uit de App Store op iOS of van Google Play op Android. Ga naar de <0>downloadsectie op onze homepage om de app voor uw apparaat te downloaden.", + "Is SentryGuard free description": "Ja, SentryGuard is volledig gratis te gebruiken. Het is echter afhankelijk van donaties om de server- en ontwikkelkosten te dekken. Als donaties de kosten niet langer dekken, moet de dienst zich mogelijk aanpassen, maar wij streven ernaar om het gratis en opensource te houden voor de community.", + "Is SentryGuard affiliated with Tesla description": "Nee, SentryGuard is niet gelieerd aan Tesla, Inc. Het is een onafhankelijk, door de community gedreven project. Tesla en het Tesla-logo zijn handelsmerken van Tesla, Inc.", + "How does SentryGuard work description": "SentryGuard gebruikt de officiële Fleet API van Tesla om de Sentry Mode-status van uw voertuig via telemetrie te bewaken. Wanneer Sentry Mode wordt geactiveerd, ontvangt u direct meldingen via Telegram. De monitoring is batterijzuinig omdat deze telemetriegegevens gebruikt in plaats van uw voertuig voortdurend te bevragen.", + "How to get started with SentryGuard": "Klik om te beginnen op \"Inloggen met Tesla\" op de homepagina. U wordt doorgestuurd naar de officiële authenticatiepagina van Tesla. Nadat u bent ingelogd en de machtigingen hebt verleend, moet u het toestemmingsformulier accepteren. Vervolgens koppelt u op de <0>pagina Voertuigen een virtuele sleutel aan uw voertuig (dit verwijst u door naar de website van Tesla om dit via de Tesla-app goed te keuren), <1>configureert u de Telegram-meldingen en schakelt u telemetrie voor uw voertuigen in.", + "What permissions SentryGuard needs": "SentryGuard heeft toegang tot de telemetriegegevens van uw voertuig nodig om de Sentry Mode-status te bewaken. Het heeft geen toegang tot locatiegegevens, batterijgegevens of opdrachten op afstand buiten wat nodig is voor het bewaken van Sentry Mode-gebeurtenissen.", + "How to link Telegram account": "Ga naar de <0>pagina Telegram-configuratie in uw dashboard, klik op \"Telegram-link genereren\" en open de link in Telegram. De bot koppelt automatisch uw account. De link verloopt om veiligheidsredenen na 15 minuten.", + "Cannot enable telemetry help": "Sommige voertuigen ondersteunen mogelijk geen telemetrie vanwege hardwarebeperkingen (Model S/X van vóór 2018) of firmwareversies. Zorg ervoor dat uw voertuig een gekoppelde virtuele sleutel heeft en een ondersteunde firmwareversie draait. Als de problemen aanhouden, raadpleeg dan het foutbericht voor specifieke details.", + "Is my data secure answer": "Ja, SentryGuard gebruikt de officiële API van Tesla met end-to-end-versleuteling. Uw gegevens worden veilig opgeslagen en uitsluitend gebruikt om monitoring- en meldingsdiensten te leveren. Wij hebben alleen toegang tot de minimale gegevens die nodig zijn voor Sentry Mode-monitoring.", + "What data SentryGuard collects": "SentryGuard verzamelt uitsluitend: profielgegevens (accountidentificatie, weergavenaam of e-mail), minimale voertuiggegevens (VIN, Sentry Mode-status, gebeurtenismetadata). Wij hebben geen toegang tot locatiegegevens, gedetailleerde rijgegevens, batterijgegevens of opdrachten op afstand buiten wat nodig is voor Sentry Mode-monitoring.", + "Can I delete my data answer": "Ja, u kunt uw Telegram-account op elk moment ontkoppelen en uw toestemming intrekken. Hiermee worden alle bijbehorende gegevens verwijderd. De functionaliteit voor het verwijderen van gegevens is momenteel in ontwikkeling. Neem voorlopig contact met ons op via <0>hello@sentryguard.org om verwijdering van gegevens aan te vragen.", + "Where is my data stored answer": "Uw gegevens worden opgeslagen op beveiligde servers in Europa, met versleuteling tijdens de overdracht en in rust. Wij handhaven administratieve, technische en fysieke beveiligingsmaatregelen om uw persoonsgegevens te beschermen.", + "Not receiving alerts help": "Controleer eerst of uw Telegram-account correct is gekoppeld. Verstuur een testbericht vanaf de <0>pagina Telegram-configuratie. Zorg ervoor dat telemetrie is ingeschakeld voor uw voertuig en dat Sentry Mode actief is op uw Tesla. Controleer ook de <1>voertuigconfiguratie om telemetrie te activeren en de virtuele sleutel in te stellen. Controleer ten slotte of u de Telegram-bot niet hebt geblokkeerd.", + "SentryGuard battery impact": "Nee, SentryGuard heeft geen invloed op de batterij of actieradius van uw voertuig. De dienst maakt gebruik van het telemetriesysteem van Tesla, dat is ontworpen om uiterst efficiënt te zijn. In tegenstelling tot apps van derden die uw voertuig mogelijk voortdurend bevragen, ontvangt SentryGuard alleen gegevens wanneer er gebeurtenissen plaatsvinden, met minimaal bandbreedteverbruik en zonder extra batterijverbruik van uw voertuig.", + "Tesla authorization revoked help": "De Tesla-autorisatie kan worden ingetrokken als u SentryGuard uit uw Tesla-account verwijdert, uw Tesla-wachtwoord wijzigt, of als het beveiligingsbeleid van Tesla een nieuwe autorisatie vereist. Log gewoon opnieuw in om de toegang te herstellen.", + "Virtual key not paired help": "U moet een virtuele sleutel aan uw voertuig koppelen om SentryGuard te gebruiken. Klik op de <0>pagina Voertuigen op de knop \"Virtuele sleutel koppelen\", die u doorverwijst naar de website van Tesla. Hierdoor wordt uw Tesla-app geopend, waar u het verzoek voor de virtuele sleutel kunt goedkeuren. Keer na goedkeuring terug naar SentryGuard en vernieuw uw voertuigen.", + "Multiple vehicles support": "Ja, SentryGuard ondersteunt meerdere voertuigen. Elk voertuig kan afzonderlijk worden geconfigureerd. Ga naar de pagina Voertuigen om de telemetrie voor elk voertuig te beheren.", + "How to support SentryGuard": "U kunt SentryGuard steunen door een donatie te doen via de Buy Me a Coffee-widget op de website, of rechtstreeks op <1>https://buymeacoffee.com/sentryguardorg. Uw steun helpt de serverkosten te dekken en houdt de dienst gratis voor iedereen. U kunt ook bijdragen aan het project op <0>GitHub door de repository een ster te geven, problemen te melden of pull requests in te dienen.", + "How to report bugs or request features": "U kunt bugs melden of functies aanvragen door een issue te openen in onze <0>GitHub-repository, of door contact met ons op te nemen via de ondersteuningschat op de website. Wij verwelkomen bijdragen van de community!", + "Who to contact for support": "Voor ondersteuning kunt u contact met ons opnemen via <0>hello@sentryguard.org, een issue openen op <1>GitHub, of de ondersteuningschat op de website gebruiken. Wij doen ons best om op alle vragen te reageren.", + "Does SentryGuard provide video footage?": "Levert SentryGuard videobeelden?", + "SentryGuard video access explanation": "SentryGuard heeft geen toegang tot videobeelden van de camera's van uw voertuig. Wanneer u echter een Sentry Mode-melding via Telegram ontvangt, kunt u op de knop \"Controleren\" in het bericht klikken om de Tesla-app rechtstreeks te openen en de live camerabeelden te bekijken om te verifiëren wat de melding heeft veroorzaakt.", + "Do I need Tesla Premium Connectivity to use SentryGuard?": "Heb ik Tesla Premium Connectivity nodig om SentryGuard te gebruiken?", + "Tesla Premium Connectivity requirement": "Nee, u hebt geen Tesla Premium Connectivity nodig om SentryGuard te gebruiken. De dienst werkt met de standaardconnectiviteit van Tesla en gebruikt de Fleet API voor telemetriegegevens. Premium Connectivity kan echter vereist zijn voor sommige geavanceerde Tesla-functies, maar SentryGuard zelf werkt met de basisconnectiviteit van het voertuig.", + "Why doesn't Sentry Mode trigger when I test it myself?": "Waarom wordt Sentry Mode niet geactiveerd wanneer ik het zelf test?", + "Sentry Mode testing explanation": "Wanneer u Sentry Mode zelf test met uw telefoon in de buurt, detecteert Tesla uw digitale sleutel en wordt Sentry Mode niet geactiveerd, omdat het een geautoriseerde gebruiker herkent. Sentry Mode wordt alleen geactiveerd wanneer het voertuig mogelijke ongeoorloofde activiteit waarneemt. Om het correct te testen, gebruikt u ofwel de telefoon van iemand anders om bewegings-/cameradetectie te activeren, of test u van een grotere afstand zonder dat uw telefoon aanwezig is.", + "Why is SentryGuard faster than Tesla notifications?": "Waarom is SentryGuard sneller dan Tesla-meldingen?", + "SentryGuard speed advantage explanation": "SentryGuard levert directe meldingen zodra Tesla een gebeurtenis detecteert en begint met opnemen, waardoor u onmiddellijk op de hoogte bent van mogelijke beveiligingsincidenten. De eigen app van Tesla toont daarentegen pas de opgenomen video nadat de opname is voltooid, en zelfs de directe meldingen van Tesla arriveren enkele seconden later. Dit snelheidsvoordeel kan cruciaal zijn om snel op beveiligingsdreigingen te kunnen reageren.", + "Does SentryGuard support older Model S/X vehicles?": "Ondersteunt SentryGuard oudere Model S/X-voertuigen?", + "Legacy vehicles support explanation": "Ja! Oudere Model S- en Model X-voertuigen (meestal gebouwd vóór 2021) met het MCU1- of MCU2-infotainmentsysteem worden volledig ondersteund door SentryGuard. In tegenstelling tot nieuwere modellen ondersteunen of vereisen deze voertuigen geen gekoppelde virtuele sleutel om telemetrie te laten werken. U kunt telemetrie gewoon rechtstreeks inschakelen zonder de koppelingsstap.", + "Settings": "Instellingen", + "Manage your account settings and preferences": "Beheer uw accountinstellingen en voorkeuren", + "Account Information": "Accountgegevens", + "Name": "Naam", + "Email": "E-mail", + "Danger Zone": "Gevarenzone", + "Delete Account": "Account verwijderen", + "Delete account description": "Het verwijderen van uw account is permanent en onomkeerbaar. Al uw gegevens, waaronder telemetrieconfiguraties, Telegram-meldingen en voertuiggegevens, worden definitief verwijderd.", + "Delete account confirmation": "Weet u zeker dat u uw account wilt verwijderen? Deze actie is permanent en verwijdert al uw gegevens, waaronder telemetrieconfiguraties en Telegram-meldingen. Deze actie kan niet ongedaan worden gemaakt.", + "Back to Dashboard": "Terug naar dashboard", + "You're on the Waitlist!": "U staat op de wachtlijst!", + "Thank you for your interest in SentryGuard": "Bedankt voor uw interesse in SentryGuard", + "We have received your registration for": "Wij hebben uw registratie ontvangen voor", + "Your account is pending approval. We'll send you an email once your account has been approved and you can start using SentryGuard.": "Uw account wacht op goedkeuring. We sturen u een e-mail zodra uw account is goedgekeurd en u SentryGuard kunt gaan gebruiken.", + "Approval is typically processed within 24-48 hours.": "Goedkeuring wordt doorgaans binnen 24-48 uur verwerkt.", + "No email within 72 hours? Check your spam or promotions folder.": "Geen e-mail binnen 72 uur? Controleer uw map met spam of promoties.", + "Back to home": "Terug naar home", + "Join our Discord community while you wait": "Word lid van onze Discord-community terwijl u wacht!", + "Join Discord": "Word lid van Discord", + "Waitlist": "Wachtlijst", + "Why is there a waitlist?": "Waarom is er een wachtlijst?", + "Why is there a waitlist answer": "SentryGuard beheert de toegang via een wachtlijst om ervoor te zorgen dat de dienst stabiel en betrouwbaar blijft voor alle gebruikers. Naarmate we blijven groeien, helpt de wachtlijst ons om nieuwe gebruikers soepel te onboarden.", + "How long does waitlist approval take?": "Hoe lang duurt de goedkeuring voor de wachtlijst?", + "How long does waitlist approval take answer": "Accountgoedkeuringen worden doorgaans binnen 24 tot 48 uur verwerkt. U ontvangt een welkomstmail zodra uw account is goedgekeurd.", + "What happens after I'm approved?": "Wat gebeurt er nadat ik ben goedgekeurd?", + "What happens after I'm approved answer": "Zodra u bent goedgekeurd, ontvangt u een welkomstmail met een stapsgewijze handleiding om aan de slag te gaan. U krijgt toegang tot uw dashboard, waar u Telegram-meldingen kunt configureren, een virtuele sleutel aan uw voertuig kunt koppelen en telemetriemonitoring kunt inschakelen.", + "I signed up but didn't receive an approval email": "Ik heb me aangemeld maar geen goedkeuringsmail ontvangen. Wat moet ik doen?", + "I signed up but didn't receive an approval email answer": "Controleer eerst uw mappen met spam en promoties. De welkomstmail wordt automatisch verstuurd zodra uw account is goedgekeurd. Als u vragen hebt over uw status, neem dan contact met ons op via hello@sentryguard.org met uw e-mailadres.", + "Can I check my waitlist status?": "Kan ik mijn wachtlijststatus controleren?", + "Can I check my waitlist status answer": "U kunt uw status controleren door te proberen in te loggen. Als u wordt doorgestuurd naar de wachtlijstpagina, wacht uw account nog op goedkeuring. Zodra u bent goedgekeurd, kunt u normaal inloggen op uw dashboard.", + "Can I use SentryGuard while on the waitlist?": "Kan ik SentryGuard gebruiken terwijl ik op de wachtlijst sta?", + "Can I use SentryGuard while on the waitlist answer": "Nee, u moet wachten op goedkeuring om toegang te krijgen tot het dashboard en de functies van SentryGuard te gebruiken. Terwijl u wacht, raden we u aan om onze FAQ en documentatie te verkennen om u voor te bereiden op het moment dat uw account wordt goedgekeurd.", + "What if I try to log in before being approved?": "Wat als ik probeer in te loggen voordat ik ben goedgekeurd?", + "What if I try to log in before being approved answer": "U wordt doorgestuurd naar de wachtlijstpagina, waar u uw e-mailadres kunt zien. U blijft op de wachtlijst staan totdat wij uw account goedkeuren, waarna u normaal kunt inloggen.", + "Link Your Telegram Account": "Koppel uw Telegram-account", + "You will receive instant alerts when suspicious activity is detected": "U ontvangt directe meldingen wanneer verdachte activiteit wordt gedetecteerd", + "💡 You are about to open Telegram. Once you've linked your account, return to SentryGuard to continue.": "💡 U staat op het punt om Telegram te openen. Zodra u uw account hebt gekoppeld, keert u terug naar SentryGuard om door te gaan.", + "How it works:": "Hoe het werkt:", + "Click \"Generate Telegram Link\"": "Klik op \"Telegram-link genereren\"", + "Click the link to open Telegram": "Klik op de link om Telegram te openen", + "The bot will automatically link your account": "De bot koppelt automatisch uw account", + "Return here and continue": "Keer hier terug en ga door", + "Set Up Virtual Key": "Virtuele sleutel instellen", + "Pair a virtual key with your vehicle in the Tesla app": "Koppel een virtuele sleutel aan uw voertuig in de Tesla-app", + "🔐 This action happens entirely in the Tesla app. Once finished, return to SentryGuard to continue.": "🔐 Deze actie vindt volledig plaats in de Tesla-app. Zodra u klaar bent, keert u terug naar SentryGuard om door te gaan.", + "How to pair a virtual key:": "Hoe koppelt u een virtuele sleutel:", + "Click \"Open Tesla App\" button below": "Klik op de knop \"Tesla-app openen\" hieronder", + "The Tesla app will open and show a confirmation dialog": "De Tesla-app wordt geopend en toont een bevestigingsvenster", + "Approve the virtual key request in the Tesla app": "Keur het verzoek voor de virtuele sleutel goed in de Tesla-app", + "Return to SentryGuard to continue setup": "Keer terug naar SentryGuard om de configuratie voort te zetten", + "Open Tesla App": "Tesla-app openen", + "I've opened the Tesla app": "Ik heb de Tesla-app geopend", + "I've linked my Telegram": "Ik heb mijn Telegram gekoppeld", + "⏱️ Once you've opened the Tesla app and approved the virtual key, click the button above to continue.": "⏱️ Zodra u de Tesla-app hebt geopend en de virtuele sleutel hebt goedgekeurd, klikt u op de bovenstaande knop om door te gaan.", + "Confirm Virtual Key Setup": "Configuratie virtuele sleutel bevestigen", + "Verify that the virtual key was paired successfully": "Controleer of de virtuele sleutel succesvol is gekoppeld", + "✅ Virtual key detected!": "✅ Virtuele sleutel gedetecteerd!", + "⏳ Waiting for you to complete the virtual key setup in the Tesla app...": "⏳ Wachten tot u de configuratie van de virtuele sleutel in de Tesla-app voltooit...", + "No virtual key was detected. Please complete the setup in the Tesla app and try again.": "Er is geen virtuele sleutel gedetecteerd. Voltooi de configuratie in de Tesla-app en probeer het opnieuw.", + "Failed to check virtual key status. Please try again.": "Controleren van de status van de virtuele sleutel mislukt. Probeer het opnieuw.", + "What to expect:": "Wat u kunt verwachten:", + "You approved the virtual key in the Tesla app": "U hebt de virtuele sleutel goedgekeurd in de Tesla-app", + "The key is now paired with your vehicle account": "De sleutel is nu gekoppeld aan uw voertuigaccount", + "You can now enable telemetry monitoring": "U kunt nu telemetriemonitoring inschakelen", + "I've completed the Tesla app setup": "Ik heb de configuratie in de Tesla-app voltooid", + "Checking...": "Bezig met controleren...", + "The button will check your vehicle for the paired virtual key": "De knop controleert uw voertuig op de gekoppelde virtuele sleutel", + "Continue to Next Step": "Doorgaan naar de volgende stap", + "Start monitoring your vehicle's Sentry Mode in real-time": "Begin met het realtime bewaken van de Sentry Mode van uw voertuig", + "No vehicles found. Please refresh or check your Tesla account.": "Geen voertuigen gevonden. Vernieuw of controleer uw Tesla-account.", + "📡 Telemetry monitoring is battery-efficient and uses Tesla's official API. You can enable it for one or more vehicles. You'll receive alerts via Telegram for each enabled vehicle.": "📡 Telemetriemonitoring is batterijzuinig en maakt gebruik van de officiële API van Tesla. U kunt het inschakelen voor een of meer voertuigen. U ontvangt voor elk ingeschakeld voertuig meldingen via Telegram.", + "Complete Onboarding": "Onboarding voltooien", + "Enable telemetry for at least one vehicle to complete setup": "Schakel telemetrie in voor ten minste één voertuig om de configuratie te voltooien", + "Setup Wizard": "Configuratiewizard", + "Setup Complete!": "Configuratie voltooid!", + "Your SentryGuard is now fully configured. You will receive instant Telegram alerts when suspicious activity is detected.": "Uw SentryGuard is nu volledig geconfigureerd. U ontvangt directe Telegram-meldingen wanneer verdachte activiteit wordt gedetecteerd.", + "Go to Dashboard": "Ga naar dashboard", + "Skip for now": "Voorlopig overslaan", + "Skipping...": "Bezig met overslaan...", + "Completing...": "Bezig met voltooien...", + "Activating...": "Bezig met activeren...", + "Activate Telemetry": "Telemetrie activeren", + "✅ Telemetry enabled! Your setup is complete.": "✅ Telemetrie ingeschakeld! Uw configuratie is voltooid.", + "You will now receive instant Telegram alerts when suspicious activity is detected.": "U ontvangt nu directe Telegram-meldingen wanneer verdachte activiteit wordt gedetecteerd.", + "What is the purpose of pairing a virtual key with SentryGuard?": "Wat is het doel van het koppelen van een virtuele sleutel aan SentryGuard?", + "Virtual key purpose explanation": "De virtuele sleutel die aan uw voertuig is gekoppeld, is de beveiligde identificatie van SentryGuard. Hiermee kan uw Tesla verifiëren dat berichten voor telemetrieconfiguratie daadwerkelijk van SentryGuard afkomstig zijn. Dit biedt een extra beveiligingslaag bovenop het authenticatietoken dat wordt gegenereerd wanneer u voor het eerst verbinding maakt met Tesla. Uw voertuig verifieert zowel dat u (de eigenaar) de machtigingen aan SentryGuard hebt verleend, als dat het daadwerkelijk SentryGuard is die deze machtigingen gebruikt, en niet een gecompromitteerde of gestolen toegang.", + "Does SentryGuard work without internet connection?": "Werkt SentryGuard zonder internetverbinding?", + "Internet connection requirement explanation": "Nee, internettoegang is vereist om SentryGuard te laten werken. Wanneer er een Sentry Mode-gebeurtenis plaatsvindt, heeft uw Tesla internetverbinding (via wifi of mobiel netwerk) nodig om de gebeurtenisgegevens naar onze servers te sturen, die de melding vervolgens via Telegram aan u doorsturen. Als uw voertuig zich op een locatie zonder internettoegang bevindt (zoals een ondergrondse parkeergarage of een land waar Tesla-connectiviteit niet beschikbaar is), kunnen er geen meldingen worden verstuurd totdat het voertuig opnieuw verbinding maakt met internet.", + "Why does the app crash when I use browser translation?": "Waarom loopt de app vast wanneer ik browservertaling gebruik?", + "Browser translation issue explanation": "Het gebruik van de automatische vertaalfunctie van uw browser (zoals \"Deze pagina vertalen\" in Chrome of vergelijkbare functies in andere browsers) kan ertoe leiden dat de applicatie vastloopt of zich onverwacht gedraagt. SentryGuard ondersteunt al meerdere talen van nature. Gebruik in plaats van browservertaling de taalkiezer in de navigatiebalk van de applicatie om te schakelen tussen Engels en Frans. Dit zorgt voor een stabiele ervaring zonder technische problemen.", + "meta.home.title": "SentryGuard - Bescherm uw Tesla", + "meta.home.description": "Realtime monitoring en directe Telegram-meldingen voor de Sentry Mode van uw Tesla-voertuig. Batterijzuinig, veilig en opensource.", + "meta.home.ogDescription": "Realtime monitoring en directe Telegram-meldingen voor de Sentry Mode van uw Tesla-voertuig.", + "meta.faq.title": "FAQ - SentryGuard", + "meta.faq.description": "Veelgestelde vragen over SentryGuard. Ontdek hoe u uw Tesla beschermt met realtime Sentry Mode-monitoring en Telegram-meldingen.", + "meta.faq.ogDescription": "Veelgestelde vragen over de Tesla-monitoring van SentryGuard.", + "Break-in Monitoring": "Inbraakmonitoring", + "Enable Break-in": "Inbraakdetectie inschakelen", + "Disable Break-in": "Inbraakdetectie uitschakelen", + "Failed to update Break-in monitoring": "Bijwerken van inbraakmonitoring mislukt", + "Offensive Response": "Offensieve reactie", + "offensiveResponseOn": "Claxon geactiveerd", + "offensiveResponseOff": "Claxon uitgeschakeld", + "offensiveResponseInfo": "Wanneer een melding wordt geactiveerd, zal het voertuig enkele seconden claxonneren of scheten laten.", + "Horn": "Claxon", + "Fart": "Scheet", + "offensiveResponseHonk": "Claxon geactiveerd bij inbraakmeldingen.", + "offensiveResponseFart": "Scheet (boombox) geactiveerd bij inbraakmeldingen.", + "offensiveResponseDisabled": "Uitgeschakeld.", + "offensiveChooseDuration": "Kies de activeringsduur:", + "offensiveDuration30m": "30 min", + "offensiveDuration1h": "1 u", + "offensiveDuration2h": "2 u", + "offensiveDuration4h": "4 u", + "offensiveDuration8h": "8 u", + "offensiveDuration24h": "24 u", + "offensiveProlong": "Verlengen", + "offensiveCancel": "Annuleren", + "Failed to update offensive response": "Bijwerken van offensieve reactie mislukt", + "Auto Sentry Mode": "Automatische Sentry Mode", + "autoSentryModeInfo": "Zodra een inbraakpoging wordt gedetecteerd, wordt de Sentry Mode automatisch ingeschakeld zodat de camera's opnemen.", + "Failed to update auto sentry mode": "Bijwerken van automatische Sentry Mode mislukt", + "Never miss a door ding again.": "Mis nooit meer een deukje in het portier.", + "Get instant Telegram alerts the second your Tesla detects a threat. Zero battery drain.": "Ontvang direct een Telegram-melding op het moment dat uw Tesla een dreiging detecteert. Geen enkel batterijverlies.", + "The Tesla App is not enough.": "De Tesla-app is niet genoeg.", + "The official app only alerts you for direct threats like alarms. For everything else—like door dings or scratches—you're left in the dark until you check your car.": "De officiële app waarschuwt u alleen voor directe dreigingen zoals alarmen. Voor al het overige—zoals deukjes of krassen—tast u in het duister totdat u uw auto controleert.", + "Without SentryGuard": "Zonder SentryGuard", + "A shopping cart hits your car. The alarm doesn't trigger. The Tesla app stays silent. You find out too late.": "Een winkelwagen raakt uw auto. Het alarm gaat niet af. De Tesla-app blijft stil. U komt er te laat achter.", + "With SentryGuard": "Met SentryGuard", + "Sentry Mode records the event. SentryGuard instantly pushes a Telegram alert to your phone. You can react immediately.": "Sentry Mode legt de gebeurtenis vast. SentryGuard stuurt direct een Telegram-melding naar uw telefoon. U kunt onmiddellijk reageren.", + "How it works": "Hoe het werkt", + "1. Connect your Tesla": "1. Verbind uw Tesla", + "Securely link your vehicle using official Tesla OAuth. We never see your password.": "Koppel uw voertuig veilig via de officiële Tesla OAuth. Wij zien uw wachtwoord nooit.", + "2. Smart Telemetry": "2. Slimme telemetrie", + "Our servers listen to the official telemetry stream. Zero polling means absolutely zero battery drain.": "Onze servers luisteren naar de officiële telemetriestream. Geen polling betekent absoluut geen batterijverlies.", + "3. Instant Alerts": "3. Directe meldingen", + "Receive push notifications via our mobile app or Telegram bot the exact second Sentry Mode is triggered.": "Ontvang pushmeldingen via onze mobiele app of onze Telegram-bot op het exacte moment dat Sentry Mode wordt geactiveerd.", + "Support a Community Project": "Steun een communityproject", + "SentryGuard is a 100% free, open-source project built by Tesla owners, for Tesla owners. It is maintained entirely through community donations.": "SentryGuard is een 100% gratis, opensource-project gebouwd door Tesla-eigenaren, voor Tesla-eigenaren. Het wordt volledig in stand gehouden door donaties uit de community.", + "Zero Battery Impact": "Geen batterijimpact", + "Protection that doesn't drain your battery.": "Bescherming die uw batterij niet leeg trekt.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard integrates deeply with Tesla's API to instantly alert you if someone pulls your door handle—even when Sentry Mode is completely disabled.": "Schakelt u Sentry Mode thuis of op het werk uit om actieradius te sparen? Geen probleem. SentryGuard integreert diepgaand met de API van Tesla om u direct te waarschuwen als iemand aan uw deurklink trekt—zelfs wanneer Sentry Mode volledig is uitgeschakeld.", + "Detects break-ins even with Sentry Mode OFF": "Detecteert inbraken zelfs met Sentry Mode UIT", + "Total protection for your Tesla. Zero battery drain.": "Volledige bescherming voor uw Tesla. Geen enkel batterijverlies.", + "Get instant Telegram alerts for door dings and break-in attempts, even when Sentry Mode is disabled.": "Ontvang directe Telegram-meldingen voor deukjes en inbraakpogingen, zelfs wanneer Sentry Mode is uitgeschakeld.", + "The official app only alerts you if the main alarm triggers. SentryGuard fills the critical security gaps.": "De officiële app waarschuwt u alleen als het hoofdalarm afgaat. SentryGuard dicht de kritieke beveiligingslacunes.", + "The Tesla app stays silent for door dings. And if you turn off Sentry Mode to save battery, you have absolutely zero protection against break-ins.": "De Tesla-app blijft stil bij deukjes. En als u Sentry Mode uitschakelt om de batterij te sparen, hebt u absoluut geen bescherming tegen inbraken.", + "Get instant Telegram alerts when Sentry Mode detects a scratch, OR when someone pulls your locked door handle while Sentry Mode is completely disabled.": "Ontvang directe Telegram-meldingen wanneer Sentry Mode een kras detecteert, OF wanneer iemand aan uw vergrendelde deurklink trekt terwijl Sentry Mode volledig is uitgeschakeld.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard uses advanced telemetry to instantly alert you if someone pulls your door handle—even when Sentry Mode is off.": "Schakelt u Sentry Mode thuis of op het werk uit om actieradius te sparen? Geen probleem. SentryGuard gebruikt geavanceerde telemetrie om u direct te waarschuwen als iemand aan uw deurklink trekt—zelfs wanneer Sentry Mode uit staat.", + "Connect our Telegram bot and receive push notifications the exact second a threat is detected.": "Verbind onze Telegram-bot en ontvang pushmeldingen op de exacte seconde dat een dreiging wordt gedetecteerd.", + "Get instant Telegram alerts for Sentry Mode events, and break-in attempts even when Sentry Mode is disabled.": "Ontvang directe Telegram-meldingen voor Sentry Mode-gebeurtenissen en inbraakpogingen, zelfs wanneer Sentry Mode is uitgeschakeld.", + "Two critical features the Tesla App is missing.": "Twee cruciale functies die de Tesla-app mist.", + "The official app leaves gaps in your security. We fill them with instant push notifications and Telegram alerts.": "De officiële app laat gaten in uw beveiliging. Wij vullen die aan met directe pushmeldingen en Telegram-meldingen.", + "Requires Sentry Mode ON": "Vereist Sentry Mode AAN", + "1. Sentry Mode Alerts": "1. Sentry Mode-meldingen", + "Get notified instantly for door dings, scratches, and parking lot accidents.": "Word direct gewaarschuwd bij deukjes, krassen en parkeerschade.", + "Tesla App": "Tesla-app", + "Stays silent for minor impacts. You only discover the damage when you get back to your car.": "Blijft stil bij kleine aanrijdingen. U ontdekt de schade pas wanneer u terugkomt bij uw auto.", + "Instantly pushes an alert to your phone the moment Sentry Mode triggers, so you can react immediately.": "Stuurt direct een melding naar uw telefoon op het moment dat Sentry Mode wordt geactiveerd, zodat u onmiddellijk kunt reageren.", + "Works with Sentry Mode OFF": "Werkt met Sentry Mode UIT", + "2. Break-in Detection": "2. Inbraakdetectie", + "Alerts you if someone pulls your door handle, even when you're saving battery.": "Waarschuwt u als iemand aan uw deurklink trekt, zelfs wanneer u batterij aan het sparen bent.", + "If Sentry Mode is off to save battery at home or at night, you get zero notifications if someone tries to break in.": "Als Sentry Mode thuis of 's nachts uit staat om de batterij te sparen, ontvangt u geen enkele melding als iemand probeert in te breken.", + "Uses advanced telemetry to detect handle pulls and alert you instantly, even when Sentry Mode is disabled.": "Gebruikt geavanceerde telemetrie om het trekken aan de deurklink te detecteren en u direct te waarschuwen, zelfs wanneer Sentry Mode is uitgeschakeld.", + "The missing security alerts for your Tesla.": "De ontbrekende beveiligingsmeldingen voor uw Tesla.", + "Get an instant push notification the second Sentry Mode records a threat, or when someone pulls your door handle—even if you disabled Sentry Mode to save battery.": "Ontvang een directe pushmelding op het moment dat Sentry Mode een dreiging vastlegt, of wanneer iemand aan uw deurklink trekt—zelfs als u Sentry Mode hebt uitgeschakeld om de batterij te sparen.", + "Unlock commands": "Commando's ontgrendelen", + "Authorize SentryGuard to interact with your vehicle.": "Geef SentryGuard toestemming om met uw voertuig te communiceren.", + "Authorize": "Toestemming geven", + "offensiveResponseLockedTitle": "Autorisatie voor voertuigopdrachten vereist", + "offensiveResponseLockedDescription": "De automatische Sentry Mode en de offensieve reactie vereisen toestemming om opdrachten naar uw Tesla te sturen.", + "offensiveResponseLockedButton": "Voertuigopdrachten autoriseren", + "Privacy Policy": "Privacybeleid", + "Terms of Service": "Servicevoorwaarden", + "New features available": "Nieuwe functies beschikbaar", + "SentryGuard has new advanced security capabilities to better protect your Tesla.": "SentryGuard beschikt over nieuwe geavanceerde beveiligingsmogelijkheden om uw Tesla beter te beschermen.", + "Detects intrusion attempts on your vehicle. You receive an instant Telegram alert as soon as a break-in attempt is detected.": "Detecteert inbraakpogingen op uw voertuig. U ontvangt direct een Telegram-melding zodra een inbraakpoging wordt gedetecteerd.", + "Offensive Response (Horn)": "Offensieve reactie (claxon)", + "When the offensive response is active, your vehicle horn triggers automatically upon detection to deter intruders immediately.": "Wanneer de offensieve reactie actief is, gaat de claxon van uw voertuig bij detectie automatisch af om indringers onmiddellijk af te schrikken.", + "💡 These features are available in the Vehicles section. You can enable break-in monitoring and configure the offensive response for each vehicle independently.": "💡 Deze functies zijn beschikbaar in het gedeelte Voertuigen. U kunt de inbraakmonitoring inschakelen en de offensieve reactie voor elk voertuig afzonderlijk configureren.", + "Understood, let's go!": "Begrepen, aan de slag!", + "Failed to continue, please try again": "Doorgaan mislukt, probeer het opnieuw.", + "Security Shield Configuration": "Configuratie beveiligingsschild", + "Configure the security features for this vehicle below.": "Configureer hieronder de beveiligingsfuncties voor dit voertuig.", + "Receive alerts on Telegram when an intrusion is detected": "Ontvang meldingen op Telegram wanneer een inbraak wordt gedetecteerd", + "Enable Sentry Mode Monitoring": "Sentry Mode-monitoring inschakelen", + "Activate Sentry Mode Monitoring": "Sentry Mode-monitoring activeren", + "✅ Security monitoring enabled! Your setup is complete.": "✅ Beveiligingsmonitoring ingeschakeld! Uw configuratie is voltooid.", + "Four critical features the Tesla App is missing.": "Vier cruciale functies die de Tesla-app mist.", + "Three critical features the Tesla App is missing.": "Drie cruciale functies die de Tesla-app mist.", + "Smart Recording": "Slimme opname", + "3. Auto Sentry Activation": "3. Automatische Sentry-activering", + "Automatically wakes up Sentry Mode and starts camera recording the second a break-in attempt is detected, even if Sentry was off.": "Activeert Sentry Mode automatisch en start de camera-opname op het moment dat een inbraakpoging wordt gedetecteerd, zelfs als Sentry uitgeschakeld was.", + "If Sentry Mode is off to save battery, cameras remain offline. You get zero video footage of the incident.": "Als Sentry Mode is uitgeschakeld om de batterij te sparen, blijven de camera’s offline. U krijgt geen enkele video-opname van het incident.", + "Instantly arms Sentry Mode upon handle pull or breach attempt, waking up all cameras to capture the suspect on video.": "Activeert Sentry Mode onmiddellijk bij het trekken aan de deurklink of een inbraakpoging en wekt alle camera’s om de dader op video vast te leggen.", + "4. Active Deterrent": "4. Actieve afschrikking", + "3. Active Deterrent": "3. Actieve afschrikking", + "Automatically scare off intruders by triggering your vehicle's horn or boombox sound the moment a break-in is detected.": "Schrik indringers automatisch af door de claxon of het boombox-geluid van uw voertuig te activeren op het moment dat een inbraak wordt gedetecteerd.", + "Stays passive and silent. The intruder can continue their attempt without any immediate local deterrent.": "Blijft passief en stil. De indringer kan zijn poging voortzetten zonder enige onmiddellijke lokale afschrikking.", + "Triggers a loud sound deterrent within seconds to alert bystanders and scare away the intruder.": "Slimme afschrikking. Geluidsmeldingen worden alleen geactiveerd door echte dreigingen (zoals het trekken aan de deurklink), waardoor vervelende valse alarmen worden voorkomen.", + "Active Defense": "Actieve verdediging", + "What is the Active Deterrent (Offensive Response) and how does it work?": "Wat is de Actieve afschrikking (Offensieve reactie) en hoe werkt deze?", + "Active deterrent explanation": "De Actieve afschrikking is een beveiligingsfunctie die automatisch een geluidsactie van uw voertuig activeert (claxon of boombox-scheetgeluid) wanneer een echte, fysieke inbraak wordt gedetecteerd (zoals het trekken aan een deurklink). In tegenstelling tot andere apps die claxonneren bij elke camerabewegingsdetectie (wat constante valse alarmen veroorzaakt), gebruikt ons systeem telemetrie om alleen op echte dreigingen te reageren. Deze functie is volledig optioneel, standaard uitgeschakeld en kan op elk moment voor elk voertuig volledig worden geconfigureerd of uitgeschakeld vanuit uw dashboard.", + "Do I have to grant write permissions (vehicle commands) to SentryGuard?": "Moet ik schrijfmachtigingen (voertuigcommando's) aan SentryGuard verlenen?", + "Write permissions requirement explanation": "Nee. SentryGuard werkt perfect in een puur passieve (alleen-lezen) modus als u alleen Telegram-meldingen wilt ontvangen. De machtiging om besturingscommando's te verzenden wordt alleen aangevraagd en vereist als u er uitdrukkelijk voor kiest om de functie Actieve afschrikking in te schakelen om de claxon of het boombox-geluid tijdens een inbraak te activeren. Als u deze functie niet activeert, heeft SentryGuard absoluut geen schrijftoegang tot uw Tesla nodig.", + "Get the app": "Download de app", + "Get the mobile app": "Download de mobiele app", + "or": "of" +} diff --git a/apps/webapp/src/locales/no/common.json b/apps/webapp/src/locales/no/common.json new file mode 100644 index 00000000..d2a5839c --- /dev/null +++ b/apps/webapp/src/locales/no/common.json @@ -0,0 +1,471 @@ +{ + "© {{year}} SentryGuard. All rights reserved.": "© {{year}} SentryGuard. Med enerett.", + "← Back to home": "← Tilbake til forsiden", + "⏳ Waiting for you to click the link and start the bot...": "⏳ Venter på at du klikker på lenken og starter boten ...", + "✅ Your Telegram account is successfully linked!": "✅ Telegram-kontoen din er nå koblet til!", + "About Telemetry": "Om telemetri", + "Additional Permissions Required": "Flere tillatelser kreves", + "Are you sure you want to disable telemetry for this vehicle?": "Er du sikker på at du vil deaktivere telemetri for dette kjøretøyet?", + "Are you sure you want to unlink your Telegram account?": "Er du sikker på at du vil koble fra Telegram-kontoen din?", + "Authenticating...": "Autentiserer ...", + "Authentication Failed": "Autentisering mislyktes", + "Authentication failed {{error}}": "Autentisering mislyktes: {{error}}", + "Authentication successful! Checking consent status...": "Autentisering vellykket! Sjekker samtykkestatus ...", + "Authentication successful! Redirecting to consent form...": "Autentisering vellykket! Videresender til samtykkeskjema ...", + "Authentication successful! Redirecting to dashboard...": "Autentisering vellykket! Videresender til dashbordet ...", + "Battery-Efficient Monitoring": "Batterivennlig overvåking", + "Click \"Fix Permissions\" to re-authenticate with Tesla and grant the required permissions. You'll be redirected back here automatically.": "Klikk på \"Korriger tillatelser\" for å autentisere på nytt med Tesla og gi de nødvendige tillatelsene. Du blir automatisk sendt tilbake hit.", + "Click \"Generate Telegram Link\" to create a unique connection link that expires in 15 minutes.": "Klikk på \"Generer Telegram-lenke\" for å opprette en unik tilkoblingslenke som utløper om 15 minutter.", + "Click the link to open our Telegram bot. The bot will automatically send a /start command with your unique token.": "Klikk på lenken for å åpne Telegram-boten vår. Boten sender automatisk en /start-kommando med din unike token.", + "Configure →": "Konfigurer →", + "Configuring...": "Konfigurerer ...", + "Confirm Connection": "Bekreft tilkobling", + "Connecting...": "Kobler til ...", + "Copied!": "Kopiert!", + "Copy": "Kopier", + "Dashboard": "Dashbord", + "Disable": "Deaktiver", + "Disable Telemetry": "Deaktiver telemetri", + "Disabled": "Deaktivert", + "Disabling...": "Deaktiverer ...", + "Enable": "Aktiver", + "Enable Telemetry": "Aktiver telemetri", + "Enabled": "Aktivert", + "Enabling telemetry allows SentryGuard to monitor your vehicle's Sentry Mode status in real-time. When suspicious activity is detected, you'll receive instant alerts via Telegram.": "Når du aktiverer telemetri, kan SentryGuard overvåke Sentry Mode-statusen til kjøretøyet ditt i sanntid uten å tappe batteriet. Når mistenkelig aktivitet oppdages, mottar du umiddelbare varsler via Telegram.", + "End-to-end encrypted communication with Tesla's official API. Your data stays yours.": "Ende-til-ende-kryptert kommunikasjon med Teslas offisielle API. Dataene dine forblir dine.", + "Failed to initiate login": "Kunne ikke starte innlogging", + "Failed to configure telemetry": "Kunne ikke konfigurere telemetri", + "Failed to enable telemetry": "Kunne ikke aktivere telemetri", + "Failed to disable telemetry": "Kunne ikke deaktivere telemetri", + "Virtual key not added to the vehicle": "Virtuell nøkkel er ikke lagt til kjøretøyet", + "Unsupported hardware (pre-2018 Model S/X)": "Maskinvare som ikke støttes (Model S/X fra før 2018)", + "Unsupported firmware version for telemetry": "Fastvareversjon som ikke støttes for telemetri", + "Maximum telemetry configurations already present": "Maksimalt antall telemetrikonfigurasjoner er allerede nådd", + "Vehicle skipped for an unknown reason": "Kjøretøyet ble hoppet over av ukjent årsak", + "Vehicle skipped for an unknown reason: {{details}}": "Kjøretøyet ble hoppet over av ukjent årsak: {{details}}", + "Fix Permissions": "Korriger tillatelser", + "Generate Link": "Generer lenke", + "Generate Telegram Link": "Generer Telegram-lenke", + "Generating...": "Genererer ...", + "GitHub": "GitHub", + "How It Works": "Slik fungerer det", + "If donations no longer cover expenses, the service may shut down, become paid (at actual cost, around $0.50/user), or be limited to current users. Your support keeps it free and open!": "Hvis donasjonene ikke lenger dekker utgiftene, kan tjenesten bli lagt ned, bli betalt (til faktisk kostnad, rundt 0,50 $/bruker) eller begrenses til nåværende brukere. Støtten din holder den gratis og åpen!", + "Instant Alerts": "Umiddelbare varsler", + "Instant Telegram notifications": "Umiddelbare Telegram-varsler", + "Link your Telegram account to receive instant vehicle alerts": "Koble til Telegram-kontoen din for å motta umiddelbare kjøretøyvarsler", + "Link your Telegram account to receive vehicle alerts.": "Koble til Telegram-kontoen din for å motta kjøretøyvarsler.", + "Linked": "Tilkoblet", + "Linked on": "Tilkoblet den", + "Loading...": "Laster ...", + "Login Cancelled": "Innlogging avbrutt", + "Login with Tesla": "Logg inn med Tesla", + "You cancelled the Tesla login. You can try again whenever you're ready.": "Du avbrøt Tesla-innloggingen. Du kan prøve igjen når du er klar.", + "Logout": "Logg ut", + "Manage": "Administrer", + "Manage Sentry Mode telemetry monitoring": "Administrer telemetriovervåking av Sentry Mode for Tesla-kjøretøyene dine", + "Manage Vehicles": "Administrer kjøretøy", + "Model": "Modell", + "Monitor and protect your Tesla vehicles": "Overvåk og beskytt Tesla-kjøretøyene dine", + "Monitor Sentry Mode via telemetry without battery drain": "Overvåk Sentry Mode-statusen til kjøretøyet ditt via telemetri, uten å tappe batteriet.", + "No vehicles": "Ingen kjøretøy", + "No vehicles found": "Ingen kjøretøy funnet", + "No vehicles found in your Tesla account. They will appear here automatically once detected.": "Ingen kjøretøy funnet på Tesla-kontoen din. De vises her automatisk når de oppdages.", + "Not affiliated with Tesla, Inc. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Ikke tilknyttet Tesla, Inc. Tesla og Tesla-logoen er varemerker som tilhører Tesla, Inc.", + "Not linked": "Ikke tilkoblet", + "Offline access": "Offline-tilgang", + "Open in Telegram": "Åpne i Telegram", + "Open Telegram": "Åpne Telegram", + "OpenID authentication": "OpenID-autentisering", + "Pair Virtual Key": "Koble til virtuell nøkkel", + "Permission Update Required": "Oppdatering av tillatelser kreves", + "Privacy & Security": "Personvern og sikkerhet", + "Processing authentication...": "Behandler autentisering ...", + "Protect Your Tesla": "Beskytt Teslaen din", + "Quick Actions": "Hurtighandlinger", + "Re-authenticating...": "Autentiserer på nytt ...", + "Real-time monitoring and instant alerts for your Tesla vehicle": "Sanntidsovervåking og umiddelbare varsler for Tesla-kjøretøyet ditt", + "Real-time Sentry Mode monitoring": "Sanntidsovervåking av Sentry Mode", + "Receive Alerts": "Motta varsler", + "Receive real-time Telegram notifications when your vehicle's Sentry Mode is triggered.": "Motta Telegram-varsler i sanntid når Sentry Mode på kjøretøyet ditt utløses.", + "Refresh": "Oppdater", + "Refresh Vehicles": "Oppdater kjøretøy", + "Return to Home": "Tilbake til forsiden", + "Secure & Private": "Sikkert og privat", + "Secure end-to-end encryption": "Sikker ende-til-ende-kryptering", + "Secure OAuth authentication powered by Tesla": "Sikker OAuth-autentisering drevet av Tesla", + "Send Test Message": "Send testmelding", + "Sending...": "Sender ...", + "SentryGuard": "SentryGuard", + "SentryGuard is a non-profit, open-source project built by the community for Tesla owners. It depends on donations to cover server and development costs.": "SentryGuard er et ideelt, åpen kildekode-prosjekt bygget av fellesskapet for Tesla-eiere. Det er avhengig av donasjoner for å dekke server- og utviklingskostnader.", + "SentryGuard is a non-profit, open-source project developed by the community for Tesla owners.": "SentryGuard er et ideelt, åpen kildekode-prosjekt utviklet av fellesskapet for Tesla-eiere.", + "SentryGuard needs additional permissions to work properly": "SentryGuard trenger flere tillatelser for å fungere riktig", + "Setup": "Oppsett", + "Success!": "Vellykket!", + "Support SentryGuard": "Støtt SentryGuard", + "Telegram": "Telegram", + "Telegram Alerts": "Telegram-varsler", + "Telegram Configuration": "Telegram-konfigurasjon", + "Telemetry Enabled": "Telemetri aktivert", + "Tesla Authorization Revoked": "Tesla-autorisasjon tilbakekalt", + "Tesla security policies required re-authorization": "Teslas sikkerhetsretningslinjer krevde ny autorisasjon", + "Telemetry monitors Sentry Mode and sends alerts without draining battery": "SentryGuard bruker telemetri for å overvåke Sentry Mode-statusen til kjøretøyet ditt og sender umiddelbare Telegram-varsler når mistenkelig aktivitet oppdages. Effektiv overvåking som ikke tapper batteriet.", + "Sentry Mode Monitoring": "Sentry Mode-overvåking", + "Test message sent! Check your Telegram.": "Testmelding sendt! Sjekk Telegram.", + "This link expires in {{minutes}} minutes": "Denne lenken utløper om {{minutes}} minutter", + "To continue using SentryGuard, please reconnect your Tesla account.": "For å fortsette å bruke SentryGuard må du koble til Tesla-kontoen din på nytt.", + "Unlink": "Koble fra", + "Unlinking...": "Kobler fra ...", + "User profile data": "Brukerprofildata", + "Vehicle telemetry data": "Telemetridata fra kjøretøyet", + "Vehicles": "Kjøretøy", + "View all →": "Vis alle →", + "VIN": "VIN", + "Virtual Key Not Paired": "Virtuell nøkkel ikke tilkoblet", + "Virtual Key Paired": "Virtuell nøkkel tilkoblet", + "Welcome back": "Velkommen tilbake", + "You need to pair your Tesla account with a virtual key to use SentryGuard.": "Du må koble Tesla-kontoen din til en virtuell nøkkel for å bruke SentryGuard.", + "You're all set! You'll now receive instant Telegram notifications when your vehicle's Sentry Mode is triggered.": "Alt er klart! Du mottar nå umiddelbare Telegram-varsler når Sentry Mode på kjøretøyet ditt utløses.", + "Your account will be linked instantly. Return to this page to see the confirmation and send a test message.": "Kontoen din kobles til umiddelbart. Gå tilbake til denne siden for å se bekreftelsen og sende en testmelding.", + "Your Telegram account is connected. You will receive alerts here.": "Telegram-kontoen din er tilkoblet. Du mottar varsler her.", + "Your Telegram chat ID is securely stored and only used to send you vehicle alerts. You can unlink your account at any time, and all associated data will be removed.": "Telegram-chat-ID-en din lagres sikkert og brukes kun til å sende deg kjøretøyvarsler. Du kan koble fra kontoen din når som helst, og alle tilknyttede data blir slettet.", + "Your Telegram Link": "Din Telegram-lenke", + "Your Tesla account is successfully paired with a virtual key.": "Tesla-kontoen din er nå koblet til en virtuell nøkkel.", + "Your Tesla account needs additional permissions to use SentryGuard": "Tesla-kontoen din trenger flere tillatelser for å bruke SentryGuard", + "Your Tesla account access has been removed. This typically happens when:": "Tilgangen til Tesla-kontoen din er fjernet. Dette skjer vanligvis når:", + "You removed SentryGuard from your Tesla account": "Du fjernet SentryGuard fra Tesla-kontoen din", + "You changed your Tesla account password": "Du endret passordet til Tesla-kontoen din", + "Your session has expired. Please log in again.": "Økten din er utløpt. Logg inn på nytt.", + "Your Vehicles": "Kjøretøyene dine", + "Your vehicles will appear here once they are synced from your Tesla account. Visit the Vehicles page to refresh.": "Kjøretøyene dine vises her når de er synkronisert fra Tesla-kontoen din. Gå til Kjøretøy-siden for å oppdatere.", + "Something went wrong": "Noe gikk galt", + "We encountered an unexpected error. Please try refreshing the page.": "Vi støtte på en uventet feil. Prøv å laste inn siden på nytt.", + "Try Again": "Prøv igjen", + "Reloading...": "Laster inn på nytt ...", + "If the problem persists, please contact support.": "Hvis problemet vedvarer, ta kontakt med kundestøtte.", + "Tesla Fleet API Consent": "Samtykke til Tesla Fleet API", + "Please read and accept the terms below to continue": "Les og godta vilkårene nedenfor for å fortsette", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Ved å signere eller godta dette skjemaet samtykker du til at SentryGuardOrg («Partneren») behandler personopplysningene dine i forbindelse med Partnerens applikasjon med tittelen SentryGuard («Appen»).", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "Partneren er behandlingsansvarlig for behandlingen av personopplysningene dine i forbindelse med Appen.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Ved å signere eller godta dette skjemaet bekrefter du også at du har mottatt Teslas personvernerklæring for kunder, tilgjengelig på", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(«Teslas personvernerklæring») og samtykker til at Tesla behandler personopplysninger i samsvar med Teslas personvernerklæring.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (e.g., event detection, Sentry Mode alerts).": "Appen lar deg dra nytte av avanserte overvåkings- og varslingsfunksjoner basert på Sentry Mode i Tesla-kjøretøyet ditt, inkludert identifisering og logging av sikkerhetshendelser (f.eks. hendelsesdeteksjon, Sentry Mode-varsler).", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events) and metadata associated with Sentry Mode events (date/time, event type).": "For å tilby disse funksjonene må Partneren behandle enkelte av personopplysningene dine, som kan omfatte:\n\n- profilinformasjon (kontoidentifikator, visningsnavn eller e-postadresse, nødvendig for å knytte hendelser til kontoen din);\n\n- minimal kjøretøyinformasjon som er nødvendig for at Appen skal fungere, inkludert kjøretøyidentifikator (VIN eller tilsvarende), Sentry Mode-status (aktivering, oppdagede hendelser) og metadata knyttet til Sentry Mode-hendelser (dato/klokkeslett, hendelsestype).", + "Partner does not access or process other categories of data from your vehicle (e.g., remote commands, detailed driving data, battery or precise location information), beyond what is strictly necessary for the App to function as described above.": "Partneren får ikke tilgang til eller behandler andre kategorier av data fra kjøretøyet ditt (f.eks. fjernkommandoer, detaljerte kjøredata, batteri- eller nøyaktig posisjonsinformasjon), utover det som er strengt nødvendig for at Appen skal fungere som beskrevet ovenfor.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "Partneren vil kun bruke denne informasjonen til:\n\n(a) å gi deg overvåkings- og varslingsfunksjoner knyttet til Sentry Mode;\n\n(b) å knytte Sentry Mode-hendelser til brukerkontoen og kjøretøyet ditt;\n\n(c) å forbedre tjenestens pålitelighet og sikkerhet (f.eks. diagnostikk av tekniske hendelser);\n\n(d) å overholde gjeldende juridiske forpliktelser, der det er relevant.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "Partneren opprettholder administrative, tekniske og fysiske sikkerhetstiltak utformet for å beskytte personopplysninger mot tilfeldig, ulovlig eller uautorisert ødeleggelse, tap, endring, tilgang, utlevering eller bruk, inkludert kryptering av data under overføring og, der det er hensiktsmessig, i hvile. Partneren vil kun oppbevare personopplysningene dine så lenge det er nødvendig for å levere Appen og funksjonene beskrevet ovenfor, med mindre annet kreves eller tillates av gjeldende lov, eller hvis du ber om tidlig sletting.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "Appen leveres «som den er» og «slik den er tilgjengelig», uten noen form for garanti. SentryGuard og dets opphavspersoner fraskriver seg alt ansvar for direkte, indirekte, tilfeldige, spesielle eller følgeskader, inkludert, men ikke begrenset til, skade på kjøretøy, tap av data eller tjenesteavbrudd, som oppstår som følge av bruk av eller manglende evne til å bruke Appen. Brukeren påtar seg det fulle og hele ansvaret for bruken av Appen og enhver konfigurert automatisert handling (for eksempel å tute med hornet).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "I henhold til gjeldende lov (inkludert GDPR) kan du ha rett til å be om innsyn og motta informasjon om personopplysningene dine, oppdatere og rette unøyaktigheter, og be om sletting når de juridiske vilkårene er oppfylt. Du har også rett til å trekke tilbake samtykket ditt når som helst, uten kostnad, noe som imidlertid kan begrense eller hindre bruken av Appen.\n\nFor å utøve rettighetene dine, trekke tilbake samtykket ditt eller få mer informasjon om Appen og behandlingen av personopplysningene dine, kan du kontakte Partneren på: hello@sentryguard.org.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Jeg samtykker til innsamling, bruk og behandling av mine personopplysninger som beskrevet ovenfor.", + "I Accept": "Jeg godtar", + "Processing...": "Behandler ...", + "Consent accepted successfully!": "Samtykke godtatt!", + "Accepted at: {{date}}": "Godtatt den: {{date}}", + "Redirecting to dashboard...": "Videresender til dashbordet ...", + "By clicking \"I Accept\", you agree to the terms above and consent to the processing of your personal data.": "Ved å klikke på \"Jeg godtar\" aksepterer du vilkårene ovenfor og samtykker til behandlingen av personopplysningene dine.", + "Revoke Consent": "Trekk tilbake samtykke", + "Are you sure you want to revoke your consent? This will permanently delete your account and all associated data, including telemetry configurations.": "Er du sikker på at du vil trekke tilbake samtykket ditt? Dette vil slette kontoen din og alle tilknyttede data permanent, inkludert telemetrikonfigurasjoner.", + "Loading consent text...": "Laster samtykketekst ...", + "Failed to load consent text": "Kunne ikke laste samtykketekst", + "Frequently Asked Questions": "Ofte stilte spørsmål", + "Find answers to common questions about SentryGuard": "Finn svar på vanlige spørsmål om SentryGuard", + "General Questions": "Generelle spørsmål", + "What is SentryGuard?": "Hva er SentryGuard?", + "SentryGuard is a non-profit, open-source service that monitors your Tesla vehicle's Sentry Mode status in real-time and sends instant alerts via Telegram when suspicious activity is detected. It uses Tesla's official API and telemetry to provide efficient monitoring without draining your battery.": "SentryGuard er en ideell tjeneste med åpen kildekode som overvåker Sentry Mode-statusen til Tesla-kjøretøyet ditt i sanntid og sender umiddelbare varsler via Telegram når mistenkelig aktivitet oppdages. Den bruker Teslas offisielle API og telemetri for å gi effektiv overvåking uten å tappe batteriet.", + "Is SentryGuard free?": "Er SentryGuard gratis?", + "Yes, SentryGuard is completely free to use. However, it depends on donations to cover server and development costs. If donations no longer cover expenses, the service may need to adapt, but we strive to keep it free and open-source for the community.": "Ja, SentryGuard er helt gratis å bruke. Den er imidlertid avhengig av donasjoner for å dekke server- og utviklingskostnader. Hvis donasjonene ikke lenger dekker utgiftene, kan det hende tjenesten må tilpasse seg, men vi streber etter å holde den gratis og åpen kildekode for fellesskapet.", + "Is SentryGuard affiliated with Tesla?": "Er SentryGuard tilknyttet Tesla?", + "No, SentryGuard is not affiliated with Tesla, Inc. It is an independent, community-driven project. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Nei, SentryGuard er ikke tilknyttet Tesla, Inc. Det er et uavhengig, fellesskapsdrevet prosjekt. Tesla og Tesla-logoen er varemerker som tilhører Tesla, Inc.", + "How does SentryGuard work?": "Hvordan fungerer SentryGuard?", + "SentryGuard uses Tesla's official Fleet API to monitor your vehicle's Sentry Mode status via telemetry. When Sentry Mode is triggered, you receive instant notifications through Telegram. The monitoring is battery-efficient as it uses telemetry data rather than constantly polling your vehicle.": "SentryGuard bruker Teslas offisielle Fleet API for å overvåke Sentry Mode-statusen til kjøretøyet ditt via telemetri. Når Sentry Mode utløses, mottar du umiddelbare varsler via Telegram. Overvåkingen er batterivennlig fordi den bruker telemetridata i stedet for å hele tiden spørre kjøretøyet ditt.", + "Setup & Configuration": "Oppsett og konfigurasjon", + "How do I get started with SentryGuard?": "Hvordan kommer jeg i gang med SentryGuard?", + "To get started, click \"Login with Tesla\" on the homepage. You'll be redirected to Tesla's official authentication page. After logging in and granting permissions, you'll need to accept the consent form, then configure Telegram alerts and enable telemetry for your vehicles.": "For å komme i gang klikker du på \"Logg inn med Tesla\" på forsiden. Du blir videresendt til Teslas offisielle autentiseringsside. Etter at du har logget inn og gitt tillatelser, må du godta samtykkeskjemaet, deretter konfigurere Telegram-varsler og aktivere telemetri for kjøretøyene dine.", + "What permissions does SentryGuard need?": "Hvilke tillatelser trenger SentryGuard?", + "SentryGuard requires access to your vehicle's telemetry data to monitor Sentry Mode status. It does not access location data, battery details, or remote commands beyond what is necessary for monitoring Sentry Mode events.": "SentryGuard krever tilgang til telemetridataene til kjøretøyet ditt for å overvåke Sentry Mode-statusen. Den får ikke tilgang til posisjonsdata, batteridetaljer eller fjernkommandoer utover det som er nødvendig for å overvåke Sentry Mode-hendelser.", + "How do I link my Telegram account?": "Hvordan kobler jeg til Telegram-kontoen min?", + "Go to the Telegram Configuration page in your dashboard, click \"Generate Telegram Link\", and open the link in Telegram. The bot will automatically link your account. The link expires in 15 minutes for security.": "Gå til Telegram-konfigurasjonssiden i dashbordet ditt, klikk på \"Generer Telegram-lenke\", og åpne lenken i Telegram. Boten kobler automatisk til kontoen din. Lenken utløper om 15 minutter av sikkerhetshensyn.", + "What if I can't enable telemetry for my vehicle?": "Hva gjør jeg hvis jeg ikke kan aktivere telemetri for kjøretøyet mitt?", + "Some vehicles may not support telemetry due to hardware limitations (pre-2018 Model S/X) or firmware versions. Make sure your vehicle has a virtual key paired and is running a supported firmware version. If issues persist, check the error message for specific details.": "Noen kjøretøy støtter kanskje ikke telemetri på grunn av maskinvarebegrensninger (Model S/X fra før 2018) eller fastvareversjoner. Sørg for at kjøretøyet ditt har en virtuell nøkkel tilkoblet og kjører en støttet fastvareversjon. Hvis problemene vedvarer, sjekk feilmeldingen for spesifikke detaljer.", + "Security & Privacy": "Sikkerhet og personvern", + "Is my data secure?": "Er dataene mine sikre?", + "Yes, SentryGuard uses Tesla's official API with end-to-end encryption. Your data is stored securely and only used to provide monitoring and alert services. We only access the minimal data necessary for Sentry Mode monitoring.": "Ja, SentryGuard bruker Teslas offisielle API med ende-til-ende-kryptering. Dataene dine lagres sikkert og brukes kun til å levere overvåkings- og varslingstjenester. Vi får kun tilgang til de minimale dataene som er nødvendige for Sentry Mode-overvåking.", + "What data does SentryGuard collect?": "Hvilke data samler SentryGuard inn?", + "SentryGuard only collects: profile information (account identifier, display name or email), minimal vehicle information (VIN, Sentry Mode status, event metadata). We do not access location data, detailed driving data, battery information, or remote commands beyond what is necessary for Sentry Mode monitoring.": "SentryGuard samler kun inn: profilinformasjon (kontoidentifikator, visningsnavn eller e-post), minimal kjøretøyinformasjon (VIN, Sentry Mode-status, hendelsesmetadata). Vi får ikke tilgang til posisjonsdata, detaljerte kjøredata, batteriinformasjon eller fjernkommandoer utover det som er nødvendig for Sentry Mode-overvåking.", + "Can I delete my data?": "Kan jeg slette dataene mine?", + "Yes, you can unlink your Telegram account and revoke your consent at any time. This will remove all associated data. You can also contact us at hello@sentryguard.org to request data deletion.": "Ja, du kan koble fra Telegram-kontoen din og trekke tilbake samtykket ditt når som helst. Dette vil fjerne alle tilknyttede data. Du kan også kontakte oss på hello@sentryguard.org for å be om sletting av data.", + "Where is my data stored?": "Hvor lagres dataene mine?", + "Your data is stored on secure servers with encryption in transit and at rest. We maintain administrative, technical, and physical safeguards to protect your personal data.": "Dataene dine lagres på sikre servere med kryptering under overføring og i hvile. Vi opprettholder administrative, tekniske og fysiske sikkerhetstiltak for å beskytte personopplysningene dine.", + "Troubleshooting": "Feilsøking", + "I'm not receiving Telegram alerts. What should I do?": "Jeg mottar ikke Telegram-varsler. Hva bør jeg gjøre?", + "First, verify that your Telegram account is linked correctly. Send a test message from the Telegram Configuration page. Make sure telemetry is enabled for your vehicle and that Sentry Mode is active on your Tesla. Check that you haven't blocked the Telegram bot.": "Først bekrefter du at Telegram-kontoen din er riktig tilkoblet. Send en testmelding fra Telegram-konfigurasjonssiden. Sørg for at telemetri er aktivert for kjøretøyet ditt, og at Sentry Mode er aktiv på Teslaen din. Sjekk at du ikke har blokkert Telegram-boten.", + "Why did my Tesla authorization get revoked?": "Hvorfor ble Tesla-autorisasjonen min tilbakekalt?", + "Tesla authorization can be revoked if you remove SentryGuard from your Tesla account, change your Tesla password, or if Tesla security policies require re-authorization. Simply log in again to restore access.": "Tesla-autorisasjon kan tilbakekalles hvis du fjerner SentryGuard fra Tesla-kontoen din, endrer Tesla-passordet ditt, eller hvis Teslas sikkerhetsretningslinjer krever ny autorisasjon. Bare logg inn på nytt for å gjenopprette tilgangen.", + "SentryGuard shows \"Virtual Key Not Paired\". What does this mean?": "SentryGuard viser \"Virtuell nøkkel ikke tilkoblet\". Hva betyr dette?", + "You need to pair a virtual key with your vehicle to use SentryGuard. This is done through the Tesla app. Go to Security & Drivers in your Tesla app and add SentryGuard as a key. Then return to SentryGuard and refresh your vehicles.": "Du må koble en virtuell nøkkel til kjøretøyet ditt for å bruke SentryGuard. Dette gjøres via Tesla-appen. Gå til Sikkerhet og sjåfører i Tesla-appen din og legg til SentryGuard som en nøkkel. Gå deretter tilbake til SentryGuard og oppdater kjøretøyene dine.", + "Can I use SentryGuard with multiple vehicles?": "Kan jeg bruke SentryGuard med flere kjøretøy?", + "Yes, SentryGuard supports multiple vehicles. Each vehicle can be configured independently. Go to the Vehicles page to manage telemetry for each vehicle.": "Ja, SentryGuard støtter flere kjøretøy. Hvert kjøretøy kan konfigureres uavhengig. Gå til Kjøretøy-siden for å administrere telemetri for hvert kjøretøy.", + "Support & Donations": "Støtte og donasjoner", + "How can I support SentryGuard?": "Hvordan kan jeg støtte SentryGuard?", + "You can support SentryGuard by making a donation through the Buy Me a Coffee widget on the website. Your support helps cover server costs and keeps the service free for everyone. You can also contribute to the project on GitHub.": "Du kan støtte SentryGuard ved å gi en donasjon via Buy Me a Coffee-widgeten på nettstedet. Støtten din bidrar til å dekke serverkostnader og holder tjenesten gratis for alle. Du kan også bidra til prosjektet på GitHub.", + "How can I report a bug or request a feature?": "Hvordan kan jeg rapportere en feil eller be om en funksjon?", + "You can report bugs or request features by opening an issue on our GitHub repository at https://github.com/abarghoud/SentryGuard. We welcome community contributions!": "Du kan rapportere feil eller be om funksjoner ved å opprette en issue i GitHub-repositoriet vårt på https://github.com/abarghoud/SentryGuard. Vi setter pris på bidrag fra fellesskapet!", + "Who can I contact for support?": "Hvem kan jeg kontakte for å få hjelp?", + "For support, you can contact us at hello@sentryguard.org or open an issue on GitHub. We do our best to respond to all inquiries.": "For hjelp kan du kontakte oss på hello@sentryguard.org eller opprette en issue på GitHub. Vi gjør vårt beste for å svare på alle henvendelser.", + "Still have questions?": "Har du fortsatt spørsmål?", + "Can't find the answer you're looking for? Please feel free to contact us.": "Finner du ikke svaret du leter etter? Ta gjerne kontakt med oss.", + "Contact Support": "Kontakt kundestøtte", + "FAQ": "FAQ", + "Does Sentry Mode need to be activated to receive notifications?": "Må Sentry Mode være aktivert for å motta varsler?", + "Why Telegram?": "Hvorfor Telegram?", + "Does SentryGuard impact the vehicle's battery or range?": "Påvirker SentryGuard batteriet eller rekkevidden til kjøretøyet?", + "What is SentryGuard description": "SentryGuard er en ideell tjeneste med åpen kildekode som overvåker Sentry Mode-statusen til Tesla-kjøretøyet ditt i sanntid og sender umiddelbare varsler via Telegram når mistenkelig aktivitet oppdages. Den bruker Teslas offisielle API og telemetri for å gi effektiv overvåking uten å tappe batteriet.", + "SentryGuard requires active Sentry Mode": "For å oppdage riper, bulker og bevegelse i nærheten, ja – da må Sentry Mode være aktiv. SentryGuard har imidlertid også et system for innbruddsdeteksjon som fungerer selv når Sentry Mode er helt deaktivert.", + "Does SentryGuard protect my car when Sentry Mode is OFF?": "Beskytter SentryGuard bilen min når Sentry Mode er AV?", + "Break-in detection explanation": "Ja! Selv om du slår av Sentry Mode for å spare batteri, overvåker SentryGuard kontinuerlig telemetrien til kjøretøyet ditt. Hvis noen prøver å dra i dørhåndtaket ditt, mottar du et umiddelbart Telegram-varsel.", + "Can SentryGuard turn on Sentry Mode automatically during a break-in?": "Kan SentryGuard slå på Sentry Mode automatisk ved et innbruddsforsøk?", + "Auto Sentry Mode explanation": "Ja! Når automatisk Sentry Mode er aktivert i kjøretøyinnstillingene dine, slår SentryGuard på Sentry Mode automatisk så snart et innbruddsforsøk oppdages — slik at kameraene begynner å ta opp, selv om Sentry Mode var av. Dette krever vehicle_cmds-autorisasjonen (den samme som brukes til hornet).", + "Why we chose Telegram": "Telegram tilbyr et kraftig og sikkert bot-API som lar oss levere umiddelbare push-varsler i sanntid. Det er utrolig raskt, pålitelig og helt gratis.", + "Is there a SentryGuard mobile app?": "Finnes det en mobilapp for SentryGuard?", + "SentryGuard mobile app explanation": "Ja! SentryGuard er tilgjengelig som egen mobilapp for både iOS og Android. Den sender umiddelbare push-varsler i samme sekund som Sentry Mode utløses, og lar deg overvåke kjøretøyene dine og gå gjennom varselhistorikken din rett fra telefonen.", + "Do I need the mobile app to receive alerts?": "Trenger jeg mobilappen for å motta varsler?", + "Mobile app vs Telegram alerts": "Nei. Hvis du allerede mottar varsler via Telegram, fortsetter alt å fungere akkurat som før. Mobilappen legger bare til egne push-varsler som ekstra kanal, i tillegg til rask tilgang til dashbordet når du er på farta.", + "How do I get the SentryGuard mobile app?": "Hvordan får jeg tak i SentryGuard-mobilappen?", + "How to get the mobile app": "Du kan laste ned SentryGuard fra App Store på iOS eller Google Play på Android. Gå til <0>nedlastingsdelen på hjemmesiden vår for å hente den til enheten din.", + "Is SentryGuard free description": "Ja, SentryGuard er helt gratis å bruke. Den er imidlertid avhengig av donasjoner for å dekke server- og utviklingskostnader. Hvis donasjonene ikke lenger dekker utgiftene, kan det hende tjenesten må tilpasse seg, men vi streber etter å holde den gratis og åpen kildekode for fellesskapet.", + "Is SentryGuard affiliated with Tesla description": "Nei, SentryGuard er ikke tilknyttet Tesla, Inc. Det er et uavhengig, fellesskapsdrevet prosjekt. Tesla og Tesla-logoen er varemerker som tilhører Tesla, Inc.", + "How does SentryGuard work description": "SentryGuard bruker Teslas offisielle Fleet API for å overvåke Sentry Mode-statusen til kjøretøyet ditt via telemetri. Når Sentry Mode utløses, mottar du umiddelbare varsler via Telegram. Overvåkingen er batterivennlig fordi den bruker telemetridata i stedet for å hele tiden spørre kjøretøyet ditt.", + "How to get started with SentryGuard": "For å komme i gang klikker du på \"Logg inn med Tesla\" på forsiden. Du blir videresendt til Teslas offisielle autentiseringsside. Etter at du har logget inn og gitt tillatelser, må du godta samtykkeskjemaet. Deretter, på <0>Kjøretøy-siden, kobler du en virtuell nøkkel til kjøretøyet ditt (dette videresender deg til Teslas nettsted for å godkjenne via Tesla-appen), <1>konfigurerer Telegram-varsler og aktiverer telemetri for kjøretøyene dine.", + "What permissions SentryGuard needs": "SentryGuard krever tilgang til telemetridataene til kjøretøyet ditt for å overvåke Sentry Mode-statusen. Den får ikke tilgang til posisjonsdata, batteridetaljer eller fjernkommandoer utover det som er nødvendig for å overvåke Sentry Mode-hendelser.", + "How to link Telegram account": "Gå til <0>Telegram-konfigurasjonssiden i dashbordet ditt, klikk på \"Generer Telegram-lenke\", og åpne lenken i Telegram. Boten kobler automatisk til kontoen din. Lenken utløper om 15 minutter av sikkerhetshensyn.", + "Cannot enable telemetry help": "Noen kjøretøy støtter kanskje ikke telemetri på grunn av maskinvarebegrensninger (Model S/X fra før 2018) eller fastvareversjoner. Sørg for at kjøretøyet ditt har en virtuell nøkkel tilkoblet og kjører en støttet fastvareversjon. Hvis problemene vedvarer, sjekk feilmeldingen for spesifikke detaljer.", + "Is my data secure answer": "Ja, SentryGuard bruker Teslas offisielle API med ende-til-ende-kryptering. Dataene dine lagres sikkert og brukes kun til å levere overvåkings- og varslingstjenester. Vi får kun tilgang til de minimale dataene som er nødvendige for Sentry Mode-overvåking.", + "What data SentryGuard collects": "SentryGuard samler kun inn: profilinformasjon (kontoidentifikator, visningsnavn eller e-post), minimal kjøretøyinformasjon (VIN, Sentry Mode-status, hendelsesmetadata). Vi får ikke tilgang til posisjonsdata, detaljerte kjøredata, batteriinformasjon eller fjernkommandoer utover det som er nødvendig for Sentry Mode-overvåking.", + "Can I delete my data answer": "Ja, du kan koble fra Telegram-kontoen din og trekke tilbake samtykket ditt når som helst. Dette vil fjerne alle tilknyttede data. Funksjonalitet for sletting av data er for tiden under utvikling. Foreløpig kan du kontakte oss på <0>hello@sentryguard.org for å be om sletting av data.", + "Where is my data stored answer": "Dataene dine lagres på sikre servere i Europa, med kryptering under overføring og i hvile. Vi opprettholder administrative, tekniske og fysiske sikkerhetstiltak for å beskytte personopplysningene dine.", + "Not receiving alerts help": "Først bekrefter du at Telegram-kontoen din er riktig tilkoblet. Send en testmelding fra <0>Telegram-konfigurasjonssiden. Sørg for at telemetri er aktivert for kjøretøyet ditt, og at Sentry Mode er aktiv på Teslaen din. Sjekk også <1>kjøretøykonfigurasjonen for å aktivere telemetri og sette opp den virtuelle nøkkelen. Til slutt sjekker du at du ikke har blokkert Telegram-boten.", + "SentryGuard battery impact": "Nei, SentryGuard har ingen innvirkning på batteriet eller rekkevidden til kjøretøyet ditt. Tjenesten bruker Teslas telemetrisystem, som er utformet for å være ekstremt effektivt. I motsetning til tredjepartsapper som kanskje spør kjøretøyet ditt hele tiden, mottar SentryGuard kun data når hendelser inntreffer, og bruker minimal båndbredde og ingen ekstra batterikraft fra kjøretøyet ditt.", + "Tesla authorization revoked help": "Tesla-autorisasjon kan tilbakekalles hvis du fjerner SentryGuard fra Tesla-kontoen din, endrer Tesla-passordet ditt, eller hvis Teslas sikkerhetsretningslinjer krever ny autorisasjon. Bare logg inn på nytt for å gjenopprette tilgangen.", + "Virtual key not paired help": "Du må koble en virtuell nøkkel til kjøretøyet ditt for å bruke SentryGuard. På <0>Kjøretøy-siden klikker du på \"Koble til virtuell nøkkel\"-knappen, som videresender deg til Teslas nettsted. Dette åpner Tesla-appen din, der du kan godkjenne forespørselen om virtuell nøkkel. Når den er godkjent, går du tilbake til SentryGuard og oppdaterer kjøretøyene dine.", + "Multiple vehicles support": "Ja, SentryGuard støtter flere kjøretøy. Hvert kjøretøy kan konfigureres uavhengig. Gå til Kjøretøy-siden for å administrere telemetri for hvert kjøretøy.", + "How to support SentryGuard": "Du kan støtte SentryGuard ved å gi en donasjon via Buy Me a Coffee-widgeten på nettstedet, eller direkte på <1>https://buymeacoffee.com/sentryguardorg. Støtten din bidrar til å dekke serverkostnader og holder tjenesten gratis for alle. Du kan også bidra til prosjektet på <0>GitHub ved å gi repositoriet en stjerne, rapportere problemer eller sende inn pull requests.", + "How to report bugs or request features": "Du kan rapportere feil eller be om funksjoner ved å opprette en issue i <0>GitHub-repositoriet vårt, eller ved å kontakte oss via støttechaten på nettstedet. Vi setter pris på bidrag fra fellesskapet!", + "Who to contact for support": "For hjelp kan du kontakte oss på <0>hello@sentryguard.org, opprette en issue på <1>GitHub, eller bruke støttechaten på nettstedet. Vi gjør vårt beste for å svare på alle henvendelser.", + "Does SentryGuard provide video footage?": "Gir SentryGuard videoopptak?", + "SentryGuard video access explanation": "SentryGuard har ikke tilgang til videoopptak fra kameraene i kjøretøyet ditt. Når du mottar et Sentry Mode-varsel via Telegram, kan du imidlertid klikke på \"Sjekk\"-knappen i meldingen for å åpne Tesla-appen direkte og se livestrømmen fra kameraene for å bekrefte hva som utløste varselet.", + "Do I need Tesla Premium Connectivity to use SentryGuard?": "Trenger jeg Tesla Premium Connectivity for å bruke SentryGuard?", + "Tesla Premium Connectivity requirement": "Nei, du trenger ikke Tesla Premium Connectivity for å bruke SentryGuard. Tjenesten fungerer med Teslas standardtilkobling og bruker Fleet API for telemetridata. Premium Connectivity kan imidlertid være nødvendig for enkelte avanserte Tesla-funksjoner, men SentryGuard selv fungerer med kjøretøyets grunnleggende tilkobling.", + "Why doesn't Sentry Mode trigger when I test it myself?": "Hvorfor utløses ikke Sentry Mode når jeg tester det selv?", + "Sentry Mode testing explanation": "Når du tester Sentry Mode selv med telefonen i nærheten, oppdager Tesla den digitale nøkkelen din og utløser ikke Sentry Mode fordi den gjenkjenner en autorisert bruker. Sentry Mode aktiveres kun når kjøretøyet registrerer mulig uautorisert aktivitet. For å teste riktig kan du enten bruke noen andres telefon for å utløse bevegelses-/kameradeteksjon, eller teste fra lengre unna uten at telefonen din er til stede.", + "Why is SentryGuard faster than Tesla notifications?": "Hvorfor er SentryGuard raskere enn Tesla-varsler?", + "SentryGuard speed advantage explanation": "SentryGuard gir umiddelbare varsler så snart Tesla oppdager en hendelse og begynner å spille inn, slik at du raskt blir oppmerksom på mulige sikkerhetshendelser. Teslas egen app viser derimot kun det innspilte videoopptaket etter at opptaket er fullført, og selv Teslas direkte varsler kommer flere sekunder senere. Denne hastighetsfordelen kan være avgjørende for å reagere raskt på sikkerhetstrusler.", + "Does SentryGuard support older Model S/X vehicles?": "Støtter SentryGuard eldre Model S/X-kjøretøy?", + "Legacy vehicles support explanation": "Ja! Eldre Model S- og Model X-kjøretøy (vanligvis bygget før 2021) som bruker infotainmentsystemet MCU1 eller MCU2, støttes fullt ut av SentryGuard. I motsetning til nyere modeller støtter eller krever ikke disse kjøretøyene at en virtuell nøkkel pares for at telemetrien skal fungere. Du kan ganske enkelt aktivere telemetri direkte uten paringstrinnet.", + "Settings": "Innstillinger", + "Manage your account settings and preferences": "Administrer kontoinnstillingene og preferansene dine", + "Account Information": "Kontoinformasjon", + "Name": "Navn", + "Email": "E-post", + "Danger Zone": "Faresone", + "Delete Account": "Slett konto", + "Delete account description": "Sletting av kontoen din er permanent og uopprettelig. Alle dataene dine, inkludert telemetrikonfigurasjoner, Telegram-varsler og kjøretøyinformasjon, blir slettet permanent.", + "Delete account confirmation": "Er du sikker på at du vil slette kontoen din? Denne handlingen er permanent og vil slette alle dataene dine, inkludert telemetrikonfigurasjoner og Telegram-varsler. Denne handlingen kan ikke angres.", + "Back to Dashboard": "Tilbake til dashbordet", + "You're on the Waitlist!": "Du er på ventelisten!", + "Thank you for your interest in SentryGuard": "Takk for din interesse for SentryGuard", + "We have received your registration for": "Vi har mottatt registreringen din for", + "Your account is pending approval. We'll send you an email once your account has been approved and you can start using SentryGuard.": "Kontoen din venter på godkjenning. Vi sender deg en e-post når kontoen din er godkjent og du kan begynne å bruke SentryGuard.", + "Approval is typically processed within 24-48 hours.": "Godkjenning behandles vanligvis innen 24–48 timer.", + "No email within 72 hours? Check your spam or promotions folder.": "Ingen e-post innen 72 timer? Sjekk søppelpost- eller kampanjemappen din.", + "Back to home": "Tilbake til forsiden", + "Join our Discord community while you wait": "Bli med i Discord-fellesskapet vårt mens du venter!", + "Join Discord": "Bli med på Discord", + "Waitlist": "Venteliste", + "Why is there a waitlist?": "Hvorfor er det en venteliste?", + "Why is there a waitlist answer": "SentryGuard administrerer tilgang via en venteliste for å sikre at tjenesten forblir stabil og pålitelig for alle brukere. Etter hvert som vi vokser, hjelper ventelisten oss med å ta imot nye brukere på en smidig måte.", + "How long does waitlist approval take?": "Hvor lang tid tar godkjenning fra ventelisten?", + "How long does waitlist approval take answer": "Kontogodkjenninger behandles vanligvis innen 24 til 48 timer. Du mottar en velkomst-e-post så snart kontoen din er godkjent.", + "What happens after I'm approved?": "Hva skjer etter at jeg er godkjent?", + "What happens after I'm approved answer": "Når du er godkjent, mottar du en velkomst-e-post med en trinnvis veiledning for å komme i gang. Du får tilgang til dashbordet ditt, der du kan konfigurere Telegram-varsler, koble en virtuell nøkkel til kjøretøyet ditt og aktivere telemetriovervåking.", + "I signed up but didn't receive an approval email": "Jeg registrerte meg, men mottok ingen godkjennings-e-post. Hva bør jeg gjøre?", + "I signed up but didn't receive an approval email answer": "Sjekk først søppelpost- og kampanjemappene dine. Velkomst-e-posten sendes automatisk når kontoen din er godkjent. Hvis du har spørsmål om statusen din, kan du kontakte oss på hello@sentryguard.org med e-postadressen din.", + "Can I check my waitlist status?": "Kan jeg sjekke ventelistestatusen min?", + "Can I check my waitlist status answer": "Du kan sjekke statusen din ved å prøve å logge inn. Hvis du blir videresendt til ventelistesiden, venter kontoen din fortsatt på godkjenning. Når den er godkjent, kan du logge inn normalt til dashbordet ditt.", + "Can I use SentryGuard while on the waitlist?": "Kan jeg bruke SentryGuard mens jeg står på ventelisten?", + "Can I use SentryGuard while on the waitlist answer": "Nei, du må vente på godkjenning for å få tilgang til dashbordet og bruke SentryGuards funksjoner. Mens du venter, anbefaler vi at du utforsker FAQ-en og dokumentasjonen vår for å forberede deg til kontoen din er godkjent.", + "What if I try to log in before being approved?": "Hva skjer hvis jeg prøver å logge inn før jeg er godkjent?", + "What if I try to log in before being approved answer": "Du blir videresendt til ventelistesiden, der du kan se e-postadressen din. Du blir værende på ventelisten til vi godkjenner kontoen din, og da kan du logge inn normalt.", + "Link Your Telegram Account": "Koble til Telegram-kontoen din", + "You will receive instant alerts when suspicious activity is detected": "Du mottar umiddelbare varsler når mistenkelig aktivitet oppdages", + "💡 You are about to open Telegram. Once you've linked your account, return to SentryGuard to continue.": "💡 Du er i ferd med å åpne Telegram. Når du har koblet til kontoen din, går du tilbake til SentryGuard for å fortsette.", + "How it works:": "Slik fungerer det:", + "Click \"Generate Telegram Link\"": "Klikk på \"Generer Telegram-lenke\"", + "Click the link to open Telegram": "Klikk på lenken for å åpne Telegram", + "The bot will automatically link your account": "Boten kobler automatisk til kontoen din", + "Return here and continue": "Gå tilbake hit og fortsett", + "Set Up Virtual Key": "Sett opp virtuell nøkkel", + "Pair a virtual key with your vehicle in the Tesla app": "Koble en virtuell nøkkel til kjøretøyet ditt i Tesla-appen", + "🔐 This action happens entirely in the Tesla app. Once finished, return to SentryGuard to continue.": "🔐 Denne handlingen skjer i sin helhet i Tesla-appen. Når du er ferdig, går du tilbake til SentryGuard for å fortsette.", + "How to pair a virtual key:": "Slik kobler du til en virtuell nøkkel:", + "Click \"Open Tesla App\" button below": "Klikk på \"Åpne Tesla-appen\"-knappen nedenfor", + "The Tesla app will open and show a confirmation dialog": "Tesla-appen åpnes og viser en bekreftelsesdialog", + "Approve the virtual key request in the Tesla app": "Godkjenn forespørselen om virtuell nøkkel i Tesla-appen", + "Return to SentryGuard to continue setup": "Gå tilbake til SentryGuard for å fortsette oppsettet", + "Open Tesla App": "Åpne Tesla-appen", + "I've opened the Tesla app": "Jeg har åpnet Tesla-appen", + "I've linked my Telegram": "Jeg har koblet til Telegram", + "⏱️ Once you've opened the Tesla app and approved the virtual key, click the button above to continue.": "⏱️ Når du har åpnet Tesla-appen og godkjent den virtuelle nøkkelen, klikker du på knappen ovenfor for å fortsette.", + "Confirm Virtual Key Setup": "Bekreft oppsett av virtuell nøkkel", + "Verify that the virtual key was paired successfully": "Bekreft at den virtuelle nøkkelen ble koblet til.", + "✅ Virtual key detected!": "✅ Virtuell nøkkel oppdaget!", + "⏳ Waiting for you to complete the virtual key setup in the Tesla app...": "⏳ Venter på at du fullfører oppsettet av den virtuelle nøkkelen i Tesla-appen ...", + "No virtual key was detected. Please complete the setup in the Tesla app and try again.": "Ingen virtuell nøkkel ble oppdaget. Fullfør oppsettet i Tesla-appen og prøv igjen.", + "Failed to check virtual key status. Please try again.": "Kunne ikke sjekke status for virtuell nøkkel. Prøv igjen.", + "What to expect:": "Hva du kan forvente:", + "You approved the virtual key in the Tesla app": "Du godkjente den virtuelle nøkkelen i Tesla-appen", + "The key is now paired with your vehicle account": "Nøkkelen er nå koblet til kjøretøykontoen din", + "You can now enable telemetry monitoring": "Du kan nå aktivere telemetriovervåking", + "I've completed the Tesla app setup": "Jeg har fullført oppsettet i Tesla-appen", + "Checking...": "Sjekker ...", + "The button will check your vehicle for the paired virtual key": "Knappen sjekker kjøretøyet ditt for den tilkoblede virtuelle nøkkelen", + "Continue to Next Step": "Fortsett til neste trinn", + "Start monitoring your vehicle's Sentry Mode in real-time": "Begynn å overvåke Sentry Mode på kjøretøyet ditt i sanntid", + "No vehicles found. Please refresh or check your Tesla account.": "Ingen kjøretøy funnet. Oppdater eller sjekk Tesla-kontoen din.", + "📡 Telemetry monitoring is battery-efficient and uses Tesla's official API. You can enable it for one or more vehicles. You'll receive alerts via Telegram for each enabled vehicle.": "📡 Telemetriovervåking er batterivennlig og bruker Teslas offisielle API. Du kan aktivere den for ett eller flere kjøretøy. Du mottar varsler via Telegram for hvert aktiverte kjøretøy.", + "Complete Onboarding": "Fullfør oppstart", + "Enable telemetry for at least one vehicle to complete setup": "Aktiver telemetri for minst ett kjøretøy for å fullføre oppsettet", + "Setup Wizard": "Oppsettsveiviser", + "Setup Complete!": "Oppsett fullført!", + "Your SentryGuard is now fully configured. You will receive instant Telegram alerts when suspicious activity is detected.": "SentryGuard er nå fullstendig konfigurert. Du mottar umiddelbare Telegram-varsler når mistenkelig aktivitet oppdages.", + "Go to Dashboard": "Gå til dashbordet", + "Skip for now": "Hopp over for nå", + "Skipping...": "Hopper over ...", + "Completing...": "Fullfører ...", + "Activating...": "Aktiverer ...", + "Activate Telemetry": "Aktiver telemetri", + "✅ Telemetry enabled! Your setup is complete.": "✅ Telemetri aktivert! Oppsettet ditt er fullført.", + "You will now receive instant Telegram alerts when suspicious activity is detected.": "Du mottar nå umiddelbare Telegram-varsler når mistenkelig aktivitet oppdages.", + "What is the purpose of pairing a virtual key with SentryGuard?": "Hva er hensikten med å koble en virtuell nøkkel til SentryGuard?", + "Virtual key purpose explanation": "Den virtuelle nøkkelen som er koblet til kjøretøyet ditt, er SentryGuards sikre identifikator. Den lar Teslaen din bekrefte at meldinger om telemetrikonfigurasjon virkelig kommer fra SentryGuard. Dette gir et ekstra sikkerhetslag utover autentiseringstokenet som genereres når du først kobler til Tesla. Kjøretøyet ditt bekrefter både at du (eieren) har gitt tillatelser til SentryGuard, og at det virkelig er SentryGuard som bruker disse tillatelsene, og ikke en kompromittert eller stjålet tilgang.", + "Does SentryGuard work without internet connection?": "Fungerer SentryGuard uten internettforbindelse?", + "Internet connection requirement explanation": "Nei, internettilgang er nødvendig for at SentryGuard skal fungere. Når en Sentry Mode-hendelse inntreffer, trenger Teslaen din internettforbindelse (via WiFi eller mobilnett) for å sende hendelsesdataene til serverne våre, som deretter videresender varselet til deg via Telegram. Hvis kjøretøyet ditt befinner seg på et sted uten internettilgang (for eksempel et parkeringsanlegg under bakken eller et land der Tesla-tilkobling ikke er tilgjengelig), kan ikke varsler sendes før kjøretøyet kobler seg til internett igjen.", + "Why does the app crash when I use browser translation?": "Hvorfor krasjer appen når jeg bruker nettleseroversettelse?", + "Browser translation issue explanation": "Bruk av nettleserens automatiske oversettelsesfunksjon (for eksempel Chromes \"Oversett denne siden\" eller lignende funksjoner i andre nettlesere) kan føre til at applikasjonen krasjer eller oppfører seg uventet. SentryGuard støtter allerede flere språk innebygd. I stedet for å bruke nettleseroversettelse, bruk språkvelgeren i applikasjonens navigasjonslinje for å bytte mellom engelsk og fransk. Dette sikrer en stabil opplevelse uten tekniske problemer.", + "meta.home.title": "SentryGuard – Beskytt Teslaen din", + "meta.home.description": "Sanntidsovervåking og umiddelbare Telegram-varsler for Sentry Mode på Tesla-kjøretøyet ditt. Batterivennlig, sikkert og åpen kildekode.", + "meta.home.ogDescription": "Sanntidsovervåking og umiddelbare Telegram-varsler for Sentry Mode på Tesla-kjøretøyet ditt.", + "meta.faq.title": "FAQ – SentryGuard", + "meta.faq.description": "Ofte stilte spørsmål om SentryGuard. Lær hvordan du beskytter Teslaen din med sanntidsovervåking av Sentry Mode og Telegram-varsler.", + "meta.faq.ogDescription": "Ofte stilte spørsmål om SentryGuards Tesla-overvåking.", + "Break-in Monitoring": "Innbruddsovervåking", + "Enable Break-in": "Aktiver innbruddsovervåking", + "Disable Break-in": "Deaktiver innbruddsovervåking", + "Failed to update Break-in monitoring": "Kunne ikke oppdatere innbruddsovervåking", + "Offensive Response": "Offensiv respons", + "offensiveResponseOn": "Horn aktivert", + "offensiveResponseOff": "Horn deaktivert", + "offensiveResponseInfo": "Når et varsel utløses, vil kjøretøyet tute med hornet eller fise i noen sekunder.", + "Horn": "Horn", + "Fart": "Fis", + "offensiveResponseHonk": "Horn aktivert for innbruddsvarsler.", + "offensiveResponseFart": "Fis (boombox) utløst for innbruddsvarsler.", + "offensiveResponseDisabled": "Deaktivert.", + "offensiveChooseDuration": "Velg aktiveringsvarighet:", + "offensiveDuration30m": "30 min", + "offensiveDuration1h": "1 t", + "offensiveDuration2h": "2 t", + "offensiveDuration4h": "4 t", + "offensiveDuration8h": "8 t", + "offensiveDuration24h": "24 t", + "offensiveProlong": "Forleng", + "offensiveCancel": "Avbryt", + "Failed to update offensive response": "Kunne ikke oppdatere offensiv respons", + "Auto Sentry Mode": "Automatisk Sentry Mode", + "autoSentryModeInfo": "Når et innbruddsforsøk oppdages, slås Sentry Mode på automatisk slik at kameraene kan ta opp.", + "Failed to update auto sentry mode": "Kunne ikke oppdatere automatisk Sentry Mode", + "Never miss a door ding again.": "Gå aldri glipp av et dørstøt igjen.", + "Get instant Telegram alerts the second your Tesla detects a threat. Zero battery drain.": "Få et umiddelbart Telegram-varsel i samme øyeblikk som Teslaen din oppdager en trussel. Null batteritapping.", + "The Tesla App is not enough.": "Tesla-appen er ikke nok.", + "The official app only alerts you for direct threats like alarms. For everything else—like door dings or scratches—you're left in the dark until you check your car.": "Den offisielle appen varsler deg kun om direkte trusler som alarmer. For alt annet – som dørstøt eller riper – får du ingenting før du selv sjekker bilen.", + "Without SentryGuard": "Uten SentryGuard", + "A shopping cart hits your car. The alarm doesn't trigger. The Tesla app stays silent. You find out too late.": "En handlevogn treffer bilen din. Alarmen utløses ikke. Tesla-appen forblir taus. Du oppdager det for sent.", + "With SentryGuard": "Med SentryGuard", + "Sentry Mode records the event. SentryGuard instantly pushes a Telegram alert to your phone. You can react immediately.": "Sentry Mode tar opp hendelsen. SentryGuard sender umiddelbart et Telegram-varsel til telefonen din. Du kan reagere med en gang.", + "How it works": "Slik fungerer det", + "1. Connect your Tesla": "1. Koble til Teslaen din", + "Securely link your vehicle using official Tesla OAuth. We never see your password.": "Koble til kjøretøyet ditt på en sikker måte med offisiell Tesla OAuth. Vi ser aldri passordet ditt.", + "2. Smart Telemetry": "2. Smart telemetri", + "Our servers listen to the official telemetry stream. Zero polling means absolutely zero battery drain.": "Serverne våre lytter til den offisielle telemetristrømmen. Null spørringer betyr absolutt null batteritapping.", + "3. Instant Alerts": "3. Umiddelbare varsler", + "Receive push notifications via our mobile app or Telegram bot the exact second Sentry Mode is triggered.": "Motta push-varsler via mobilappen vår eller Telegram-boten vår i samme sekund som Sentry Mode utløses.", + "Support a Community Project": "Støtt et fellesskapsprosjekt", + "SentryGuard is a 100% free, open-source project built by Tesla owners, for Tesla owners. It is maintained entirely through community donations.": "SentryGuard er et 100 % gratis åpen kildekode-prosjekt bygget av Tesla-eiere, for Tesla-eiere. Det vedlikeholdes utelukkende gjennom donasjoner fra fellesskapet.", + "Zero Battery Impact": "Null batteripåvirkning", + "Protection that doesn't drain your battery.": "Beskyttelse som ikke tapper batteriet ditt.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard integrates deeply with Tesla's API to instantly alert you if someone pulls your door handle—even when Sentry Mode is completely disabled.": "Slår du av Sentry Mode hjemme eller på jobb for å spare rekkevidde? Ikke noe problem. SentryGuard integreres dypt med Teslas API for å varsle deg umiddelbart hvis noen drar i dørhåndtaket ditt – selv når Sentry Mode er helt deaktivert.", + "Detects break-ins even with Sentry Mode OFF": "Oppdager innbrudd selv med Sentry Mode AV", + "Total protection for your Tesla. Zero battery drain.": "Total beskyttelse for Teslaen din. Null batteritapping.", + "Get instant Telegram alerts for door dings and break-in attempts, even when Sentry Mode is disabled.": "Få umiddelbare Telegram-varsler om dørstøt og innbruddsforsøk, selv når Sentry Mode er deaktivert.", + "The official app only alerts you if the main alarm triggers. SentryGuard fills the critical security gaps.": "Den offisielle appen varsler deg kun hvis hovedalarmen utløses. SentryGuard tetter de kritiske sikkerhetshullene.", + "The Tesla app stays silent for door dings. And if you turn off Sentry Mode to save battery, you have absolutely zero protection against break-ins.": "Tesla-appen forblir taus ved dørstøt. Og hvis du slår av Sentry Mode for å spare batteri, har du absolutt ingen beskyttelse mot innbrudd.", + "Get instant Telegram alerts when Sentry Mode detects a scratch, OR when someone pulls your locked door handle while Sentry Mode is completely disabled.": "Få umiddelbare Telegram-varsler når Sentry Mode oppdager en ripe, ELLER når noen drar i det låste dørhåndtaket ditt mens Sentry Mode er helt deaktivert.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard uses advanced telemetry to instantly alert you if someone pulls your door handle—even when Sentry Mode is off.": "Slår du av Sentry Mode hjemme eller på jobb for å spare rekkevidde? Ikke noe problem. SentryGuard bruker avansert telemetri for å varsle deg umiddelbart hvis noen drar i dørhåndtaket ditt – selv når Sentry Mode er av.", + "Connect our Telegram bot and receive push notifications the exact second a threat is detected.": "Koble til Telegram-boten vår og motta push-varsler i nøyaktig samme sekund som en trussel oppdages.", + "Get instant Telegram alerts for Sentry Mode events, and break-in attempts even when Sentry Mode is disabled.": "Få umiddelbare Telegram-varsler om Sentry Mode-hendelser, og innbruddsforsøk selv når Sentry Mode er deaktivert.", + "Two critical features the Tesla App is missing.": "To kritiske funksjoner Tesla-appen mangler.", + "The official app leaves gaps in your security. We fill them with instant push notifications and Telegram alerts.": "Den offisielle appen etterlater sikkerhetshull. Vi fyller dem med umiddelbare push-varsler og Telegram-varsler.", + "Requires Sentry Mode ON": "Krever Sentry Mode PÅ", + "1. Sentry Mode Alerts": "1. Sentry Mode-varsler", + "Get notified instantly for door dings, scratches, and parking lot accidents.": "Bli varslet umiddelbart om dørstøt, riper og parkeringsuhell.", + "Tesla App": "Tesla-appen", + "Stays silent for minor impacts. You only discover the damage when you get back to your car.": "Forblir taus ved mindre sammenstøt. Du oppdager først skaden når du kommer tilbake til bilen.", + "Instantly pushes an alert to your phone the moment Sentry Mode triggers, so you can react immediately.": "Sender umiddelbart et varsel til telefonen din i det øyeblikket Sentry Mode utløses, slik at du kan reagere med en gang.", + "Works with Sentry Mode OFF": "Fungerer med Sentry Mode AV", + "2. Break-in Detection": "2. Innbruddsdeteksjon", + "Alerts you if someone pulls your door handle, even when you're saving battery.": "Varsler deg hvis noen drar i dørhåndtaket ditt, selv når du sparer batteri.", + "If Sentry Mode is off to save battery at home or at night, you get zero notifications if someone tries to break in.": "Hvis Sentry Mode er av for å spare batteri hjemme eller om natten, får du ingen varsler hvis noen prøver å bryte seg inn.", + "Uses advanced telemetry to detect handle pulls and alert you instantly, even when Sentry Mode is disabled.": "Bruker avansert telemetri for å oppdage drag i håndtaket og varsle deg umiddelbart, selv når Sentry Mode er deaktivert.", + "The missing security alerts for your Tesla.": "Sikkerhetsvarslene Teslaen din mangler.", + "Get an instant push notification the second Sentry Mode records a threat, or when someone pulls your door handle—even if you disabled Sentry Mode to save battery.": "Få et umiddelbart push-varsel i samme sekund som Sentry Mode tar opp en trussel, eller når noen drar i dørhåndtaket ditt – selv om du deaktiverte Sentry Mode for å spare batteri.", + "Unlock commands": "Lås opp kommandoer", + "Authorize SentryGuard to interact with your vehicle.": "Gi SentryGuard tillatelse til å samhandle med kjøretøyet ditt.", + "Authorize": "Gi tillatelse", + "offensiveResponseLockedTitle": "Autorisasjon for kjøretøykommandoer kreves", + "offensiveResponseLockedDescription": "Automatisk Sentry Mode og offensiv respons krever tillatelse til å sende kommandoer til Teslaen din.", + "offensiveResponseLockedButton": "Autoriser kjøretøykommandoer", + "Privacy Policy": "Personvernerklæring", + "Terms of Service": "Tjenestevilkår", + "New features available": "Nye funksjoner tilgjengelig", + "SentryGuard has new advanced security capabilities to better protect your Tesla.": "SentryGuard har nye avanserte sikkerhetsfunksjoner for å beskytte Teslaen din enda bedre.", + "Detects intrusion attempts on your vehicle. You receive an instant Telegram alert as soon as a break-in attempt is detected.": "Oppdager innbruddsforsøk på kjøretøyet ditt. Du mottar et umiddelbart Telegram-varsel så snart et innbruddsforsøk oppdages.", + "Offensive Response (Horn)": "Offensiv respons (horn)", + "When the offensive response is active, your vehicle horn triggers automatically upon detection to deter intruders immediately.": "Når den offensive responsen er aktiv, utløses kjøretøyets horn automatisk ved deteksjon for å skremme bort inntrengere umiddelbart.", + "💡 These features are available in the Vehicles section. You can enable break-in monitoring and configure the offensive response for each vehicle independently.": "💡 Disse funksjonene er tilgjengelige i Kjøretøy-seksjonen. Du kan aktivere innbruddsovervåking og konfigurere den offensive responsen for hvert kjøretøy uavhengig.", + "Understood, let's go!": "Forstått, kjør i gang!", + "Failed to continue, please try again": "Kunne ikke fortsette, prøv igjen.", + "Security Shield Configuration": "Konfigurasjon av sikkerhetsskjold", + "Configure the security features for this vehicle below.": "Konfigurer sikkerhetsfunksjonene for dette kjøretøyet nedenfor.", + "Receive alerts on Telegram when an intrusion is detected": "Motta varsler på Telegram når et innbrudd oppdages", + "Enable Sentry Mode Monitoring": "Aktiver Sentry Mode-overvåking", + "Activate Sentry Mode Monitoring": "Aktiver Sentry Mode-overvåking", + "✅ Security monitoring enabled! Your setup is complete.": "✅ Sikkerhetsovervåking aktivert! Oppsettet ditt er fullført.", + "Four critical features the Tesla App is missing.": "Fire kritiske funksjoner som mangler i Tesla-appen.", + "Three critical features the Tesla App is missing.": "Tre kritiske funksjoner Tesla-appen mangler.", + "Smart Recording": "Smart opptak", + "3. Auto Sentry Activation": "3. Automatisk Sentry-aktivering", + "Automatically wakes up Sentry Mode and starts camera recording the second a break-in attempt is detected, even if Sentry was off.": "Vekker automatisk Sentry Mode og starter kameraopptak i samme sekund som et innbruddsforsøk oppdages, selv om Sentry var avslått.", + "If Sentry Mode is off to save battery, cameras remain offline. You get zero video footage of the incident.": "Hvis Sentry Mode er avslått for å spare batteri, forblir kameraene offline. Du får ikke noe videomateriale fra hendelsen.", + "Instantly arms Sentry Mode upon handle pull or breach attempt, waking up all cameras to capture the suspect on video.": "Aktiverer Sentry Mode umiddelbart når noen drar i dørhåndtaket eller ved et innbruddsforsøk, og vekker alle kameraene for å filme gjerningspersonen.", + "4. Active Deterrent": "4. Aktiv avskrekking", + "3. Active Deterrent": "3. Aktiv avskrekking", + "Automatically scare off intruders by triggering your vehicle's horn or boombox sound the moment a break-in is detected.": "Skrem automatisk bort inntrengere ved å utløse kjøretøyets horn eller boombox-lyd i det øyeblikket et innbrudd oppdages.", + "Stays passive and silent. The intruder can continue their attempt without any immediate local deterrent.": "Forblir passiv og taus. Inntrengeren kan fortsette forsøket sitt uten noen umiddelbar lokal avskrekking.", + "Triggers a loud sound deterrent within seconds to alert bystanders and scare away the intruder.": "Smart avskrekking. Lydvarsler utløses kun av reelle trusler (som drag i dørhåndtaket), noe som hindrer irriterende falske alarmer.", + "Active Defense": "Aktivt forsvar", + "What is the Active Deterrent (Offensive Response) and how does it work?": "Hva er den aktive avskrekkingen (offensiv respons), og hvordan fungerer den?", + "Active deterrent explanation": "Den aktive avskrekkingen er en sikkerhetsfunksjon som automatisk utløser en lydhandling fra kjøretøyet ditt (horn eller boombox-fiselyd) når et reelt, fysisk innbrudd oppdages (som et drag i dørhåndtaket). I motsetning til andre apper som tuter ved enhver kamerabevegelse (og dermed gir konstante falske alarmer), bruker systemet vårt telemetri for å reagere kun på reelle trusler. Denne funksjonen er helt valgfri, deaktivert som standard, og kan konfigureres eller deaktiveres når som helst for hvert kjøretøy fra dashbordet ditt.", + "Do I have to grant write permissions (vehicle commands) to SentryGuard?": "Må jeg gi skrivetillatelser (kjøretøykommandoer) til SentryGuard?", + "Write permissions requirement explanation": "Nei. SentryGuard fungerer utmerket i en rent passiv (skrivebeskyttet) modus hvis du bare vil motta Telegram-varsler. Tillatelsen til å sende kontrollkommandoer kreves og forespørres kun hvis du uttrykkelig velger å aktivere den aktive avskrekkingsfunksjonen for å utløse hornet eller boombox-lyden under et innbrudd. Hvis du ikke aktiverer denne funksjonen, krever SentryGuard absolutt ingen skrivetilgang til Teslaen din.", + "Get the app": "Last ned appen", + "Get the mobile app": "Last ned mobilappen", + "or": "eller" +} diff --git a/apps/webapp/src/locales/sv/common.json b/apps/webapp/src/locales/sv/common.json new file mode 100644 index 00000000..bbe1f6c7 --- /dev/null +++ b/apps/webapp/src/locales/sv/common.json @@ -0,0 +1,471 @@ +{ + "© {{year}} SentryGuard. All rights reserved.": "© {{year}} SentryGuard. Med ensamrätt.", + "← Back to home": "← Tillbaka till startsidan", + "⏳ Waiting for you to click the link and start the bot...": "⏳ Väntar på att du klickar på länken och startar boten...", + "✅ Your Telegram account is successfully linked!": "✅ Ditt Telegram-konto har länkats!", + "About Telemetry": "Om telemetri", + "Additional Permissions Required": "Ytterligare behörigheter krävs", + "Are you sure you want to disable telemetry for this vehicle?": "Är du säker på att du vill inaktivera telemetri för det här fordonet?", + "Are you sure you want to unlink your Telegram account?": "Är du säker på att du vill avlänka ditt Telegram-konto?", + "Authenticating...": "Autentiserar...", + "Authentication Failed": "Autentiseringen misslyckades", + "Authentication failed {{error}}": "Autentiseringen misslyckades: {{error}}", + "Authentication successful! Checking consent status...": "Autentiseringen lyckades! Kontrollerar samtyckesstatus...", + "Authentication successful! Redirecting to consent form...": "Autentiseringen lyckades! Omdirigerar till samtyckesformuläret...", + "Authentication successful! Redirecting to dashboard...": "Autentiseringen lyckades! Omdirigerar till instrumentpanelen...", + "Battery-Efficient Monitoring": "Batterisnål övervakning", + "Click \"Fix Permissions\" to re-authenticate with Tesla and grant the required permissions. You'll be redirected back here automatically.": "Klicka på \"Åtgärda behörigheter\" för att autentisera dig på nytt med Tesla och bevilja de behörigheter som krävs. Du omdirigeras automatiskt tillbaka hit.", + "Click \"Generate Telegram Link\" to create a unique connection link that expires in 15 minutes.": "Klicka på \"Generera Telegram-länk\" för att skapa en unik anslutningslänk som upphör att gälla om 15 minuter.", + "Click the link to open our Telegram bot. The bot will automatically send a /start command with your unique token.": "Klicka på länken för att öppna vår Telegram-bot. Boten skickar automatiskt ett /start-kommando med din unika token.", + "Configure →": "Konfigurera →", + "Configuring...": "Konfigurerar...", + "Confirm Connection": "Bekräfta anslutning", + "Connecting...": "Ansluter...", + "Copied!": "Kopierat!", + "Copy": "Kopiera", + "Dashboard": "Instrumentpanel", + "Disable": "Inaktivera", + "Disable Telemetry": "Inaktivera telemetri", + "Disabled": "Inaktiverad", + "Disabling...": "Inaktiverar...", + "Enable": "Aktivera", + "Enable Telemetry": "Aktivera telemetri", + "Enabled": "Aktiverad", + "Enabling telemetry allows SentryGuard to monitor your vehicle's Sentry Mode status in real-time. When suspicious activity is detected, you'll receive instant alerts via Telegram.": "Genom att aktivera telemetri kan SentryGuard övervaka ditt fordons Sentry Mode-status i realtid utan att tömma batteriet. När misstänkt aktivitet upptäcks får du omedelbara varningar via Telegram.", + "End-to-end encrypted communication with Tesla's official API. Your data stays yours.": "Helt krypterad kommunikation med Teslas officiella API. Dina data förblir dina.", + "Failed to initiate login": "Det gick inte att starta inloggningen", + "Failed to configure telemetry": "Det gick inte att konfigurera telemetri", + "Failed to enable telemetry": "Det gick inte att aktivera telemetri", + "Failed to disable telemetry": "Det gick inte att inaktivera telemetri", + "Virtual key not added to the vehicle": "Virtuell nyckel har inte lagts till i fordonet", + "Unsupported hardware (pre-2018 Model S/X)": "Maskinvara som inte stöds (Model S/X före 2018)", + "Unsupported firmware version for telemetry": "Firmware-version som inte stöds för telemetri", + "Maximum telemetry configurations already present": "Maximalt antal telemetrikonfigurationer har redan uppnåtts", + "Vehicle skipped for an unknown reason": "Fordonet hoppades över av okänd anledning", + "Vehicle skipped for an unknown reason: {{details}}": "Fordonet hoppades över av okänd anledning: {{details}}", + "Fix Permissions": "Åtgärda behörigheter", + "Generate Link": "Generera länk", + "Generate Telegram Link": "Generera Telegram-länk", + "Generating...": "Genererar...", + "GitHub": "GitHub", + "How It Works": "Så fungerar det", + "If donations no longer cover expenses, the service may shut down, become paid (at actual cost, around $0.50/user), or be limited to current users. Your support keeps it free and open!": "Om donationerna inte längre täcker kostnaderna kan tjänsten läggas ner, bli betald (till självkostnadspris, runt 0,50 USD/användare) eller begränsas till nuvarande användare. Ditt stöd håller den gratis och öppen!", + "Instant Alerts": "Omedelbara varningar", + "Instant Telegram notifications": "Omedelbara Telegram-aviseringar", + "Link your Telegram account to receive instant vehicle alerts": "Länka ditt Telegram-konto för att få omedelbara fordonsvarningar", + "Link your Telegram account to receive vehicle alerts.": "Länka ditt Telegram-konto för att få fordonsvarningar.", + "Linked": "Länkad", + "Linked on": "Länkad den", + "Loading...": "Laddar...", + "Login Cancelled": "Inloggningen avbröts", + "Login with Tesla": "Logga in med Tesla", + "You cancelled the Tesla login. You can try again whenever you're ready.": "Du avbröt inloggningen med Tesla. Du kan försöka igen när du är redo.", + "Logout": "Logga ut", + "Manage": "Hantera", + "Manage Sentry Mode telemetry monitoring": "Hantera telemetriövervakning av Sentry Mode för dina Tesla-fordon", + "Manage Vehicles": "Hantera fordon", + "Model": "Modell", + "Monitor and protect your Tesla vehicles": "Övervaka och skydda dina Tesla-fordon", + "Monitor Sentry Mode via telemetry without battery drain": "Övervaka ditt fordons Sentry Mode-status via telemetri, utan att tömma batteriet.", + "No vehicles": "Inga fordon", + "No vehicles found": "Inga fordon hittades", + "No vehicles found in your Tesla account. They will appear here automatically once detected.": "Inga fordon hittades på ditt Tesla-konto. De visas här automatiskt när de upptäcks.", + "Not affiliated with Tesla, Inc. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Inte anslutet till Tesla, Inc. Tesla och Tesla-logotypen är varumärken som tillhör Tesla, Inc.", + "Not linked": "Inte länkad", + "Offline access": "Offlineåtkomst", + "Open in Telegram": "Öppna i Telegram", + "Open Telegram": "Öppna Telegram", + "OpenID authentication": "OpenID-autentisering", + "Pair Virtual Key": "Para ihop virtuell nyckel", + "Permission Update Required": "Uppdatering av behörigheter krävs", + "Privacy & Security": "Integritet och säkerhet", + "Processing authentication...": "Bearbetar autentisering...", + "Protect Your Tesla": "Skydda din Tesla", + "Quick Actions": "Snabbåtgärder", + "Re-authenticating...": "Autentiserar på nytt...", + "Real-time monitoring and instant alerts for your Tesla vehicle": "Övervakning i realtid och omedelbara varningar för ditt Tesla-fordon", + "Real-time Sentry Mode monitoring": "Övervakning av Sentry Mode i realtid", + "Receive Alerts": "Ta emot varningar", + "Receive real-time Telegram notifications when your vehicle's Sentry Mode is triggered.": "Få Telegram-aviseringar i realtid när ditt fordons Sentry Mode utlöses.", + "Refresh": "Uppdatera", + "Refresh Vehicles": "Uppdatera fordon", + "Return to Home": "Tillbaka till startsidan", + "Secure & Private": "Säkert och privat", + "Secure end-to-end encryption": "Säker helt krypterad anslutning", + "Secure OAuth authentication powered by Tesla": "Säker OAuth-autentisering med Tesla", + "Send Test Message": "Skicka testmeddelande", + "Sending...": "Skickar...", + "SentryGuard": "SentryGuard", + "SentryGuard is a non-profit, open-source project built by the community for Tesla owners. It depends on donations to cover server and development costs.": "SentryGuard är ett ideellt projekt med öppen källkod, byggt av communityn för Tesla-ägare. Det är beroende av donationer för att täcka server- och utvecklingskostnader.", + "SentryGuard is a non-profit, open-source project developed by the community for Tesla owners.": "SentryGuard är ett ideellt projekt med öppen källkod, utvecklat av communityn för Tesla-ägare.", + "SentryGuard needs additional permissions to work properly": "SentryGuard behöver ytterligare behörigheter för att fungera korrekt", + "Setup": "Konfiguration", + "Success!": "Klart!", + "Support SentryGuard": "Stöd SentryGuard", + "Telegram": "Telegram", + "Telegram Alerts": "Telegram-varningar", + "Telegram Configuration": "Telegram-konfiguration", + "Telemetry Enabled": "Telemetri aktiverad", + "Tesla Authorization Revoked": "Tesla-auktorisering återkallad", + "Tesla security policies required re-authorization": "Teslas säkerhetspolicyer krävde ny auktorisering", + "Telemetry monitors Sentry Mode and sends alerts without draining battery": "SentryGuard använder telemetri för att övervaka ditt fordons Sentry Mode-status och skickar omedelbara Telegram-varningar när misstänkt aktivitet upptäcks. Effektiv övervakning som inte tömmer batteriet.", + "Sentry Mode Monitoring": "Övervakning av Sentry Mode", + "Test message sent! Check your Telegram.": "Testmeddelande skickat! Kontrollera ditt Telegram.", + "This link expires in {{minutes}} minutes": "Den här länken upphör att gälla om {{minutes}} minuter", + "To continue using SentryGuard, please reconnect your Tesla account.": "För att fortsätta använda SentryGuard, anslut ditt Tesla-konto på nytt.", + "Unlink": "Avlänka", + "Unlinking...": "Avlänkar...", + "User profile data": "Profildata för användare", + "Vehicle telemetry data": "Telemetridata för fordon", + "Vehicles": "Fordon", + "View all →": "Visa alla →", + "VIN": "VIN", + "Virtual Key Not Paired": "Virtuell nyckel inte ihopparad", + "Virtual Key Paired": "Virtuell nyckel ihopparad", + "Welcome back": "Välkommen tillbaka", + "You need to pair your Tesla account with a virtual key to use SentryGuard.": "Du måste para ihop ditt Tesla-konto med en virtuell nyckel för att använda SentryGuard.", + "You're all set! You'll now receive instant Telegram notifications when your vehicle's Sentry Mode is triggered.": "Allt är klart! Du får nu omedelbara Telegram-aviseringar när ditt fordons Sentry Mode utlöses.", + "Your account will be linked instantly. Return to this page to see the confirmation and send a test message.": "Ditt konto länkas omedelbart. Återgå till den här sidan för att se bekräftelsen och skicka ett testmeddelande.", + "Your Telegram account is connected. You will receive alerts here.": "Ditt Telegram-konto är anslutet. Du får varningar här.", + "Your Telegram chat ID is securely stored and only used to send you vehicle alerts. You can unlink your account at any time, and all associated data will be removed.": "Ditt Telegram-chatt-ID lagras säkert och används endast för att skicka fordonsvarningar till dig. Du kan avlänka ditt konto när som helst, och alla tillhörande data tas bort.", + "Your Telegram Link": "Din Telegram-länk", + "Your Tesla account is successfully paired with a virtual key.": "Ditt Tesla-konto är ihopparat med en virtuell nyckel.", + "Your Tesla account needs additional permissions to use SentryGuard": "Ditt Tesla-konto behöver ytterligare behörigheter för att använda SentryGuard", + "Your Tesla account access has been removed. This typically happens when:": "Åtkomsten till ditt Tesla-konto har tagits bort. Detta sker vanligtvis när:", + "You removed SentryGuard from your Tesla account": "Du tog bort SentryGuard från ditt Tesla-konto", + "You changed your Tesla account password": "Du ändrade lösenordet för ditt Tesla-konto", + "Your session has expired. Please log in again.": "Din session har upphört. Logga in igen.", + "Your Vehicles": "Dina fordon", + "Your vehicles will appear here once they are synced from your Tesla account. Visit the Vehicles page to refresh.": "Dina fordon visas här när de har synkroniserats från ditt Tesla-konto. Besök sidan Fordon för att uppdatera.", + "Something went wrong": "Något gick fel", + "We encountered an unexpected error. Please try refreshing the page.": "Ett oväntat fel inträffade. Försök att uppdatera sidan.", + "Try Again": "Försök igen", + "Reloading...": "Laddar om...", + "If the problem persists, please contact support.": "Om problemet kvarstår, kontakta supporten.", + "Tesla Fleet API Consent": "Samtycke för Tesla Fleet API", + "Please read and accept the terms below to continue": "Läs och godkänn villkoren nedan för att fortsätta", + "By signing or accepting this form, you consent to the processing of your Personal Data by SentryGuardOrg (\"Partner\") in the context of the Partner's application titled: SentryGuard (the \"App\").": "Genom att underteckna eller godkänna detta formulär samtycker du till att SentryGuardOrg (\"Partnern\") behandlar dina personuppgifter inom ramen för Partnerns applikation med titeln SentryGuard (\"Appen\").", + "Partner is the data controller responsible for the processing of your Personal Data in the context of the App.": "Partnern är den personuppgiftsansvarige som ansvarar för behandlingen av dina personuppgifter inom ramen för Appen.", + "By signing or accepting this form, you also acknowledge receipt of the Tesla Customer Privacy Notice available at": "Genom att underteckna eller godkänna detta formulär bekräftar du även att du tagit del av Teslas integritetsmeddelande för kunder, som finns på", + "(\"Tesla Privacy Notice\") and consent to processing of Personal Data by Tesla in accordance with the Tesla Privacy Notice.": "(\"Teslas integritetsmeddelande\") och samtycker till att Tesla behandlar dina personuppgifter i enlighet med Teslas integritetsmeddelande.", + "The App allows you to benefit from advanced monitoring and notification features based on your Tesla vehicle's Sentry Mode, including the identification and logging of security events (e.g., event detection, Sentry Mode alerts).": "Appen gör att du kan dra nytta av avancerade funktioner för övervakning och avisering som bygger på Sentry Mode i ditt Tesla-fordon, inklusive identifiering och loggning av säkerhetshändelser (t.ex. händelsedetektering, Sentry Mode-varningar).", + "To provide these features, Partner must process some of your Personal Data, which may include: profile information (account identifier, display name or email address, necessary to associate events with your account); minimal vehicle information necessary for the App to function, including vehicle identifier (VIN or equivalent), Sentry Mode status (activation, detected events) and metadata associated with Sentry Mode events (date/time, event type).": "För att tillhandahålla dessa funktioner måste Partnern behandla vissa av dina personuppgifter, vilka kan omfatta:\n\n- profilinformation (kontoidentifierare, visningsnamn eller e-postadress, nödvändiga för att koppla händelser till ditt konto);\n\n- minimal fordonsinformation som krävs för att Appen ska fungera, inklusive fordonsidentifierare (VIN eller motsvarande), Sentry Mode-status (aktivering, upptäckta händelser) och metadata kopplade till Sentry Mode-händelser (datum/tid, händelsetyp).", + "Partner does not access or process other categories of data from your vehicle (e.g., remote commands, detailed driving data, battery or precise location information), beyond what is strictly necessary for the App to function as described above.": "Partnern får inte åtkomst till och behandlar inte andra kategorier av data från ditt fordon (t.ex. fjärrkommandon, detaljerade kördata, batteri- eller exakt platsinformation), utöver vad som är strikt nödvändigt för att Appen ska fungera enligt beskrivningen ovan.", + "Partner will only use this information for: (a) providing you with monitoring and notification features related to Sentry Mode; (b) associating Sentry Mode events with your user account and vehicle; (c) improving service reliability and security (e.g., technical incident diagnostics); (d) complying with applicable legal obligations, where applicable.": "Partnern använder denna information enbart för att:\n\n(a) tillhandahålla dig övervaknings- och aviseringsfunktioner kopplade till Sentry Mode;\n\n(b) koppla Sentry Mode-händelser till ditt användarkonto och fordon;\n\n(c) förbättra tjänstens tillförlitlighet och säkerhet (t.ex. diagnostik av tekniska incidenter);\n\n(d) uppfylla tillämpliga rättsliga skyldigheter, i förekommande fall.", + "Partner maintains administrative, technical, and physical safeguards designed to protect Personal Data against accidental, unlawful or unauthorized destruction, loss, alteration, access, disclosure or use, including encryption of data in transit and, where appropriate, at rest. Partner will only retain your Personal Data for as long as necessary to provide you with the App and the features described above, unless otherwise required or authorized by applicable law or if you request early deletion.": "Partnern upprätthåller administrativa, tekniska och fysiska skyddsåtgärder som är utformade för att skydda personuppgifter mot oavsiktlig, olaglig eller obehörig förstörelse, förlust, ändring, åtkomst, utlämnande eller användning, inklusive kryptering av data under överföring och, där så är lämpligt, i vila. Partnern behåller dina personuppgifter endast så länge som är nödvändigt för att tillhandahålla dig Appen och de funktioner som beskrivs ovan, om inte annat krävs eller tillåts enligt tillämplig lag eller om du begär tidig radering.", + "The App is provided \"as is\" and \"as available\", without warranty of any kind. SentryGuard and its authors disclaim all liability for any direct, indirect, incidental, special, or consequential damages, including but not limited to vehicle damage, loss of data, or service interruptions, arising out of the use of or inability to use the App. The user assumes sole and full responsibility for the use of the App and any automated actions configured (such as honking the horn).": "Appen tillhandahålls \"i befintligt skick\" och \"i mån av tillgänglighet\", utan någon som helst garanti. SentryGuard och dess upphovsmän frånsäger sig allt ansvar för direkta, indirekta, oförutsedda, särskilda eller följdskador, inklusive men inte begränsat till fordonsskador, dataförlust eller avbrott i tjänsten, som uppstår till följd av användning av eller oförmåga att använda Appen. Användaren tar fullt och ensamt ansvar för användningen av Appen och eventuella konfigurerade automatiska åtgärder (såsom att tuta med signalhornet).", + "Subject to applicable law (including GDPR), you may have the right to request access and receive information about your Personal Data, update and correct inaccuracies, and request deletion when legal conditions are met. You also have the right to withdraw your consent at any time, without cost, which may however limit or prevent use of the App. To exercise your rights, withdraw your consent or obtain more information about the App and the processing of your Personal Data, you can contact Partner at: hello@sentryguard.org": "Med förbehåll för tillämplig lag (inklusive GDPR) kan du ha rätt att begära åtkomst till och få information om dina personuppgifter, uppdatera och rätta felaktigheter samt begära radering när de rättsliga villkoren är uppfyllda. Du har också rätt att när som helst återkalla ditt samtycke, utan kostnad, vilket dock kan begränsa eller förhindra användningen av Appen.\n\nFör att utöva dina rättigheter, återkalla ditt samtycke eller få mer information om Appen och behandlingen av dina personuppgifter kan du kontakta Partnern på: hello@sentryguard.org.", + "I consent to the collection, use, and processing of my Personal Data as described above.": "Jag samtycker till insamling, användning och behandling av mina personuppgifter enligt beskrivningen ovan.", + "I Accept": "Jag godkänner", + "Processing...": "Bearbetar...", + "Consent accepted successfully!": "Samtycket godkändes!", + "Accepted at: {{date}}": "Godkänt den: {{date}}", + "Redirecting to dashboard...": "Omdirigerar till instrumentpanelen...", + "By clicking \"I Accept\", you agree to the terms above and consent to the processing of your personal data.": "Genom att klicka på \"Jag godkänner\" accepterar du villkoren ovan och samtycker till behandlingen av dina personuppgifter.", + "Revoke Consent": "Återkalla samtycke", + "Are you sure you want to revoke your consent? This will permanently delete your account and all associated data, including telemetry configurations.": "Är du säker på att du vill återkalla ditt samtycke? Detta raderar permanent ditt konto och alla tillhörande data, inklusive telemetrikonfigurationer.", + "Loading consent text...": "Laddar samtyckestext...", + "Failed to load consent text": "Det gick inte att ladda samtyckestexten", + "Frequently Asked Questions": "Vanliga frågor", + "Find answers to common questions about SentryGuard": "Hitta svar på vanliga frågor om SentryGuard", + "General Questions": "Allmänna frågor", + "What is SentryGuard?": "Vad är SentryGuard?", + "SentryGuard is a non-profit, open-source service that monitors your Tesla vehicle's Sentry Mode status in real-time and sends instant alerts via Telegram when suspicious activity is detected. It uses Tesla's official API and telemetry to provide efficient monitoring without draining your battery.": "SentryGuard är en ideell tjänst med öppen källkod som övervakar ditt Tesla-fordons Sentry Mode-status i realtid och skickar omedelbara varningar via Telegram när misstänkt aktivitet upptäcks. Den använder Teslas officiella API och telemetri för att erbjuda effektiv övervakning utan att tömma batteriet.", + "Is SentryGuard free?": "Är SentryGuard gratis?", + "Yes, SentryGuard is completely free to use. However, it depends on donations to cover server and development costs. If donations no longer cover expenses, the service may need to adapt, but we strive to keep it free and open-source for the community.": "Ja, SentryGuard är helt gratis att använda. Tjänsten är dock beroende av donationer för att täcka server- och utvecklingskostnader. Om donationerna inte längre täcker kostnaderna kan tjänsten behöva anpassas, men vi strävar efter att hålla den gratis och med öppen källkod för communityn.", + "Is SentryGuard affiliated with Tesla?": "Är SentryGuard anslutet till Tesla?", + "No, SentryGuard is not affiliated with Tesla, Inc. It is an independent, community-driven project. Tesla and the Tesla logo are trademarks of Tesla, Inc.": "Nej, SentryGuard är inte anslutet till Tesla, Inc. Det är ett oberoende, community-drivet projekt. Tesla och Tesla-logotypen är varumärken som tillhör Tesla, Inc.", + "How does SentryGuard work?": "Hur fungerar SentryGuard?", + "SentryGuard uses Tesla's official Fleet API to monitor your vehicle's Sentry Mode status via telemetry. When Sentry Mode is triggered, you receive instant notifications through Telegram. The monitoring is battery-efficient as it uses telemetry data rather than constantly polling your vehicle.": "SentryGuard använder Teslas officiella Fleet API för att övervaka ditt fordons Sentry Mode-status via telemetri. När Sentry Mode utlöses får du omedelbara aviseringar via Telegram. Övervakningen är batterisnål eftersom den använder telemetridata i stället för att ständigt fråga av ditt fordon.", + "Setup & Configuration": "Konfiguration och inställningar", + "How do I get started with SentryGuard?": "Hur kommer jag igång med SentryGuard?", + "To get started, click \"Login with Tesla\" on the homepage. You'll be redirected to Tesla's official authentication page. After logging in and granting permissions, you'll need to accept the consent form, then configure Telegram alerts and enable telemetry for your vehicles.": "Klicka på \"Logga in med Tesla\" på startsidan för att komma igång. Du omdirigeras till Teslas officiella autentiseringssida. När du har loggat in och beviljat behörigheter behöver du godkänna samtyckesformuläret, sedan konfigurera Telegram-varningar och aktivera telemetri för dina fordon.", + "What permissions does SentryGuard need?": "Vilka behörigheter behöver SentryGuard?", + "SentryGuard requires access to your vehicle's telemetry data to monitor Sentry Mode status. It does not access location data, battery details, or remote commands beyond what is necessary for monitoring Sentry Mode events.": "SentryGuard kräver åtkomst till ditt fordons telemetridata för att övervaka Sentry Mode-status. Den får inte åtkomst till platsdata, batteridetaljer eller fjärrkommandon utöver vad som är nödvändigt för att övervaka Sentry Mode-händelser.", + "How do I link my Telegram account?": "Hur länkar jag mitt Telegram-konto?", + "Go to the Telegram Configuration page in your dashboard, click \"Generate Telegram Link\", and open the link in Telegram. The bot will automatically link your account. The link expires in 15 minutes for security.": "Gå till sidan Telegram-konfiguration i din instrumentpanel, klicka på \"Generera Telegram-länk\" och öppna länken i Telegram. Boten länkar automatiskt ditt konto. Länken upphör att gälla efter 15 minuter av säkerhetsskäl.", + "What if I can't enable telemetry for my vehicle?": "Vad gör jag om jag inte kan aktivera telemetri för mitt fordon?", + "Some vehicles may not support telemetry due to hardware limitations (pre-2018 Model S/X) or firmware versions. Make sure your vehicle has a virtual key paired and is running a supported firmware version. If issues persist, check the error message for specific details.": "Vissa fordon kanske inte stöder telemetri på grund av maskinvarubegränsningar (Model S/X före 2018) eller firmware-versioner. Se till att ditt fordon har en virtuell nyckel ihopparad och kör en firmware-version som stöds. Om problemen kvarstår, kontrollera felmeddelandet för specifika detaljer.", + "Security & Privacy": "Säkerhet och integritet", + "Is my data secure?": "Är mina data säkra?", + "Yes, SentryGuard uses Tesla's official API with end-to-end encryption. Your data is stored securely and only used to provide monitoring and alert services. We only access the minimal data necessary for Sentry Mode monitoring.": "Ja, SentryGuard använder Teslas officiella API med helt krypterad anslutning. Dina data lagras säkert och används endast för att tillhandahålla övervaknings- och varningstjänster. Vi får endast åtkomst till de minimala data som krävs för Sentry Mode-övervakning.", + "What data does SentryGuard collect?": "Vilka data samlar SentryGuard in?", + "SentryGuard only collects: profile information (account identifier, display name or email), minimal vehicle information (VIN, Sentry Mode status, event metadata). We do not access location data, detailed driving data, battery information, or remote commands beyond what is necessary for Sentry Mode monitoring.": "SentryGuard samlar endast in: profilinformation (kontoidentifierare, visningsnamn eller e-post), minimal fordonsinformation (VIN, Sentry Mode-status, händelsemetadata). Vi får inte åtkomst till platsdata, detaljerade kördata, batteriinformation eller fjärrkommandon utöver vad som är nödvändigt för Sentry Mode-övervakning.", + "Can I delete my data?": "Kan jag radera mina data?", + "Yes, you can unlink your Telegram account and revoke your consent at any time. This will remove all associated data. You can also contact us at hello@sentryguard.org to request data deletion.": "Ja, du kan avlänka ditt Telegram-konto och återkalla ditt samtycke när som helst. Detta tar bort alla tillhörande data. Du kan också kontakta oss på hello@sentryguard.org för att begära radering av data.", + "Where is my data stored?": "Var lagras mina data?", + "Your data is stored on secure servers with encryption in transit and at rest. We maintain administrative, technical, and physical safeguards to protect your personal data.": "Dina data lagras på säkra servrar med kryptering under överföring och i vila. Vi upprätthåller administrativa, tekniska och fysiska skyddsåtgärder för att skydda dina personuppgifter.", + "Troubleshooting": "Felsökning", + "I'm not receiving Telegram alerts. What should I do?": "Jag får inga Telegram-varningar. Vad ska jag göra?", + "First, verify that your Telegram account is linked correctly. Send a test message from the Telegram Configuration page. Make sure telemetry is enabled for your vehicle and that Sentry Mode is active on your Tesla. Check that you haven't blocked the Telegram bot.": "Kontrollera först att ditt Telegram-konto är korrekt länkat. Skicka ett testmeddelande från sidan Telegram-konfiguration. Se till att telemetri är aktiverat för ditt fordon och att Sentry Mode är aktivt på din Tesla. Kontrollera att du inte har blockerat Telegram-boten.", + "Why did my Tesla authorization get revoked?": "Varför återkallades min Tesla-auktorisering?", + "Tesla authorization can be revoked if you remove SentryGuard from your Tesla account, change your Tesla password, or if Tesla security policies require re-authorization. Simply log in again to restore access.": "Tesla-auktoriseringen kan återkallas om du tar bort SentryGuard från ditt Tesla-konto, ändrar ditt Tesla-lösenord eller om Teslas säkerhetspolicyer kräver ny auktorisering. Logga bara in igen för att återställa åtkomsten.", + "SentryGuard shows \"Virtual Key Not Paired\". What does this mean?": "SentryGuard visar \"Virtuell nyckel inte ihopparad\". Vad betyder det?", + "You need to pair a virtual key with your vehicle to use SentryGuard. This is done through the Tesla app. Go to Security & Drivers in your Tesla app and add SentryGuard as a key. Then return to SentryGuard and refresh your vehicles.": "Du måste para ihop en virtuell nyckel med ditt fordon för att använda SentryGuard. Detta görs via Tesla-appen. Gå till Säkerhet och förare i din Tesla-app och lägg till SentryGuard som en nyckel. Återgå sedan till SentryGuard och uppdatera dina fordon.", + "Can I use SentryGuard with multiple vehicles?": "Kan jag använda SentryGuard med flera fordon?", + "Yes, SentryGuard supports multiple vehicles. Each vehicle can be configured independently. Go to the Vehicles page to manage telemetry for each vehicle.": "Ja, SentryGuard stöder flera fordon. Varje fordon kan konfigureras oberoende. Gå till sidan Fordon för att hantera telemetri för varje fordon.", + "Support & Donations": "Support och donationer", + "How can I support SentryGuard?": "Hur kan jag stödja SentryGuard?", + "You can support SentryGuard by making a donation through the Buy Me a Coffee widget on the website. Your support helps cover server costs and keeps the service free for everyone. You can also contribute to the project on GitHub.": "Du kan stödja SentryGuard genom att göra en donation via Buy Me a Coffee-widgeten på webbplatsen. Ditt stöd hjälper till att täcka serverkostnader och håller tjänsten gratis för alla. Du kan också bidra till projektet på GitHub.", + "How can I report a bug or request a feature?": "Hur rapporterar jag en bugg eller önskar en funktion?", + "You can report bugs or request features by opening an issue on our GitHub repository at https://github.com/abarghoud/SentryGuard. We welcome community contributions!": "Du kan rapportera buggar eller önska funktioner genom att öppna ett ärende i vårt GitHub-repository på https://github.com/abarghoud/SentryGuard. Vi välkomnar bidrag från communityn!", + "Who can I contact for support?": "Vem kan jag kontakta för support?", + "For support, you can contact us at hello@sentryguard.org or open an issue on GitHub. We do our best to respond to all inquiries.": "För support kan du kontakta oss på hello@sentryguard.org eller öppna ett ärende på GitHub. Vi gör vårt bästa för att svara på alla förfrågningar.", + "Still have questions?": "Har du fortfarande frågor?", + "Can't find the answer you're looking for? Please feel free to contact us.": "Hittar du inte svaret du letar efter? Tveka inte att kontakta oss.", + "Contact Support": "Kontakta supporten", + "FAQ": "FAQ", + "Does Sentry Mode need to be activated to receive notifications?": "Måste Sentry Mode vara aktiverat för att ta emot aviseringar?", + "Why Telegram?": "Varför Telegram?", + "Does SentryGuard impact the vehicle's battery or range?": "Påverkar SentryGuard fordonets batteri eller räckvidd?", + "What is SentryGuard description": "SentryGuard är en ideell tjänst med öppen källkod som övervakar ditt Tesla-fordons Sentry Mode-status i realtid och skickar omedelbara varningar via Telegram när misstänkt aktivitet upptäcks. Den använder Teslas officiella API och telemetri för att erbjuda effektiv övervakning utan att tömma batteriet.", + "SentryGuard requires active Sentry Mode": "För att upptäcka repor, bucklor och rörelse i närheten, ja – då måste Sentry Mode vara aktivt. SentryGuard har dock även ett system för inbrottsdetektering som fungerar även när Sentry Mode är helt inaktiverat.", + "Does SentryGuard protect my car when Sentry Mode is OFF?": "Skyddar SentryGuard min bil när Sentry Mode är AV?", + "Break-in detection explanation": "Ja! Även om du stänger av Sentry Mode för att spara batteri övervakar SentryGuard ditt fordons telemetri kontinuerligt. Om någon försöker dra i ditt dörrhandtag får du en omedelbar Telegram-varning.", + "Can SentryGuard turn on Sentry Mode automatically during a break-in?": "Kan SentryGuard aktivera Sentry Mode automatiskt vid ett inbrottsförsök?", + "Auto Sentry Mode explanation": "Ja! När automatiskt Sentry Mode är aktiverat i fordonets inställningar aktiverar SentryGuard Sentry Mode automatiskt så snart ett inbrottsförsök upptäcks — så att kamerorna börjar spela in, även om Sentry Mode var avstängt. Detta kräver behörigheten vehicle_cmds (samma som används för signalhornet).", + "Why we chose Telegram": "Telegram erbjuder ett kraftfullt och säkert bot-API som gör att vi kan leverera omedelbara push-aviseringar i realtid. Det är otroligt snabbt, pålitligt och helt gratis.", + "Is there a SentryGuard mobile app?": "Finns det en mobilapp för SentryGuard?", + "SentryGuard mobile app explanation": "Ja! SentryGuard finns som native mobilapp för både iOS och Android. Den skickar omedelbara push-aviseringar i samma sekund som Sentry Mode utlöses, och låter dig övervaka dina fordon och gå igenom din aviseringshistorik direkt från telefonen.", + "Do I need the mobile app to receive alerts?": "Behöver jag mobilappen för att få aviseringar?", + "Mobile app vs Telegram alerts": "Nej. Om du redan får aviseringar via Telegram fortsätter allt att fungera precis som tidigare. Mobilappen lägger bara till native push-aviseringar som en extra kanal, tillsammans med snabb tillgång till din dashboard på språng.", + "How do I get the SentryGuard mobile app?": "Hur får jag tag i SentryGuard-mobilappen?", + "How to get the mobile app": "Du kan ladda ner SentryGuard från App Store på iOS eller Google Play på Android. Gå till <0>nedladdningsavsnittet på vår startsida för att hämta den till din enhet.", + "Is SentryGuard free description": "Ja, SentryGuard är helt gratis att använda. Tjänsten är dock beroende av donationer för att täcka server- och utvecklingskostnader. Om donationerna inte längre täcker kostnaderna kan tjänsten behöva anpassas, men vi strävar efter att hålla den gratis och med öppen källkod för communityn.", + "Is SentryGuard affiliated with Tesla description": "Nej, SentryGuard är inte anslutet till Tesla, Inc. Det är ett oberoende, community-drivet projekt. Tesla och Tesla-logotypen är varumärken som tillhör Tesla, Inc.", + "How does SentryGuard work description": "SentryGuard använder Teslas officiella Fleet API för att övervaka ditt fordons Sentry Mode-status via telemetri. När Sentry Mode utlöses får du omedelbara aviseringar via Telegram. Övervakningen är batterisnål eftersom den använder telemetridata i stället för att ständigt fråga av ditt fordon.", + "How to get started with SentryGuard": "Klicka på \"Logga in med Tesla\" på startsidan för att komma igång. Du omdirigeras till Teslas officiella autentiseringssida. När du har loggat in och beviljat behörigheter behöver du godkänna samtyckesformuläret. Därefter, på <0>sidan Fordon, parar du ihop en virtuell nyckel med ditt fordon (detta omdirigerar dig till Teslas webbplats för att godkänna via Tesla-appen), <1>konfigurerar Telegram-varningar och aktiverar telemetri för dina fordon.", + "What permissions SentryGuard needs": "SentryGuard kräver åtkomst till ditt fordons telemetridata för att övervaka Sentry Mode-status. Den får inte åtkomst till platsdata, batteridetaljer eller fjärrkommandon utöver vad som är nödvändigt för att övervaka Sentry Mode-händelser.", + "How to link Telegram account": "Gå till <0>sidan Telegram-konfiguration i din instrumentpanel, klicka på \"Generera Telegram-länk\" och öppna länken i Telegram. Boten länkar automatiskt ditt konto. Länken upphör att gälla efter 15 minuter av säkerhetsskäl.", + "Cannot enable telemetry help": "Vissa fordon kanske inte stöder telemetri på grund av maskinvarubegränsningar (Model S/X före 2018) eller firmware-versioner. Se till att ditt fordon har en virtuell nyckel ihopparad och kör en firmware-version som stöds. Om problemen kvarstår, kontrollera felmeddelandet för specifika detaljer.", + "Is my data secure answer": "Ja, SentryGuard använder Teslas officiella API med helt krypterad anslutning. Dina data lagras säkert och används endast för att tillhandahålla övervaknings- och varningstjänster. Vi får endast åtkomst till de minimala data som krävs för Sentry Mode-övervakning.", + "What data SentryGuard collects": "SentryGuard samlar endast in: profilinformation (kontoidentifierare, visningsnamn eller e-post), minimal fordonsinformation (VIN, Sentry Mode-status, händelsemetadata). Vi får inte åtkomst till platsdata, detaljerade kördata, batteriinformation eller fjärrkommandon utöver vad som är nödvändigt för Sentry Mode-övervakning.", + "Can I delete my data answer": "Ja, du kan avlänka ditt Telegram-konto och återkalla ditt samtycke när som helst. Detta tar bort alla tillhörande data. Funktionen för radering av data är för närvarande under utveckling. Tills vidare, kontakta oss på <0>hello@sentryguard.org för att begära radering av data.", + "Where is my data stored answer": "Dina data lagras på säkra servrar belägna i Europa, med kryptering under överföring och i vila. Vi upprätthåller administrativa, tekniska och fysiska skyddsåtgärder för att skydda dina personuppgifter.", + "Not receiving alerts help": "Kontrollera först att ditt Telegram-konto är korrekt länkat. Skicka ett testmeddelande från <0>sidan Telegram-konfiguration. Se till att telemetri är aktiverat för ditt fordon och att Sentry Mode är aktivt på din Tesla. Kontrollera även <1>fordonskonfigurationen för att aktivera telemetri och konfigurera den virtuella nyckeln. Kontrollera slutligen att du inte har blockerat Telegram-boten.", + "SentryGuard battery impact": "Nej, SentryGuard har ingen påverkan på ditt fordons batteri eller räckvidd. Tjänsten använder Teslas telemetrisystem, som är utformat för att vara extremt effektivt. Till skillnad från tredjepartsappar som kan fråga av ditt fordon ständigt tar SentryGuard endast emot data när händelser inträffar, med minimal bandbredd och utan extra batteriförbrukning från ditt fordon.", + "Tesla authorization revoked help": "Tesla-auktoriseringen kan återkallas om du tar bort SentryGuard från ditt Tesla-konto, ändrar ditt Tesla-lösenord eller om Teslas säkerhetspolicyer kräver ny auktorisering. Logga bara in igen för att återställa åtkomsten.", + "Virtual key not paired help": "Du måste para ihop en virtuell nyckel med ditt fordon för att använda SentryGuard. På <0>sidan Fordon klickar du på knappen \"Para ihop virtuell nyckel\" som omdirigerar dig till Teslas webbplats. Detta öppnar din Tesla-app där du kan godkänna begäran om den virtuella nyckeln. När den har godkänts, återgå till SentryGuard och uppdatera dina fordon.", + "Multiple vehicles support": "Ja, SentryGuard stöder flera fordon. Varje fordon kan konfigureras oberoende. Gå till sidan Fordon för att hantera telemetri för varje fordon.", + "How to support SentryGuard": "Du kan stödja SentryGuard genom att göra en donation via Buy Me a Coffee-widgeten på webbplatsen, eller direkt på <1>https://buymeacoffee.com/sentryguardorg. Ditt stöd hjälper till att täcka serverkostnader och håller tjänsten gratis för alla. Du kan också bidra till projektet på <0>GitHub genom att stjärnmärka repositoryt, rapportera problem eller skicka in pull requests.", + "How to report bugs or request features": "Du kan rapportera buggar eller önska funktioner genom att öppna ett ärende i vårt <0>GitHub-repository, eller genom att kontakta oss via supportchatten på webbplatsen. Vi välkomnar bidrag från communityn!", + "Who to contact for support": "För support kan du kontakta oss på <0>hello@sentryguard.org, öppna ett ärende på <1>GitHub eller använda supportchatten på webbplatsen. Vi gör vårt bästa för att svara på alla förfrågningar.", + "Does SentryGuard provide video footage?": "Tillhandahåller SentryGuard videomaterial?", + "SentryGuard video access explanation": "SentryGuard har inte åtkomst till videomaterial från ditt fordons kameror. När du får en Sentry Mode-varning via Telegram kan du dock klicka på knappen \"Kontrollera\" i meddelandet för att öppna Tesla-appen direkt och se livekameraflödet för att verifiera vad som utlöste varningen.", + "Do I need Tesla Premium Connectivity to use SentryGuard?": "Behöver jag Tesla Premium Connectivity för att använda SentryGuard?", + "Tesla Premium Connectivity requirement": "Nej, du behöver inte Tesla Premium Connectivity för att använda SentryGuard. Tjänsten fungerar med Teslas standardanslutning och använder Fleet API för telemetridata. Premium Connectivity kan dock krävas för vissa avancerade Tesla-funktioner, men SentryGuard i sig fungerar med fordonets grundläggande anslutning.", + "Why doesn't Sentry Mode trigger when I test it myself?": "Varför utlöses inte Sentry Mode när jag testar det själv?", + "Sentry Mode testing explanation": "När du testar Sentry Mode själv med din telefon i närheten upptäcker Tesla din digitala nyckel och utlöser inte Sentry Mode eftersom den känner igen en behörig användare. Sentry Mode aktiveras endast när fordonet känner av potentiellt obehörig aktivitet. För att testa ordentligt, använd antingen någon annans telefon för att utlösa rörelse-/kameradetektering, eller testa på längre avstånd utan att din telefon finns med.", + "Why is SentryGuard faster than Tesla notifications?": "Varför är SentryGuard snabbare än Teslas aviseringar?", + "SentryGuard speed advantage explanation": "SentryGuard ger omedelbara aviseringar så snart Tesla upptäcker en händelse och börjar spela in, vilket ger dig direkt kännedom om potentiella säkerhetsincidenter. Teslas egen app visar däremot inspelad video först när inspelningen är klar, och även Teslas direkta aviseringar kommer flera sekunder senare. Denna snabbhetsfördel kan vara avgörande för att kunna reagera snabbt på säkerhetshot.", + "Does SentryGuard support older Model S/X vehicles?": "Har SentryGuard stöd för äldre Model S/X-fordon?", + "Legacy vehicles support explanation": "Ja! Äldre Model S- och Model X-fordon (vanligtvis tillverkade före 2021) som använder infotainmentsystemet MCU1 eller MCU2 stöds fullt ut av SentryGuard. Till skillnad från nyare modeller stöder eller kräver dessa fordon inte att en virtuell nyckel parkopplas för att telemetrin ska fungera. Du kan helt enkelt aktivera telemetrin direkt, utan parkopplingssteget.", + "Settings": "Inställningar", + "Manage your account settings and preferences": "Hantera kontoinställningar och preferenser", + "Account Information": "Kontoinformation", + "Name": "Namn", + "Email": "E-post", + "Danger Zone": "Riskzon", + "Delete Account": "Radera konto", + "Delete account description": "Att radera ditt konto är permanent och oåterkalleligt. Alla dina data, inklusive telemetrikonfigurationer, Telegram-varningar och fordonsinformation, raderas permanent.", + "Delete account confirmation": "Är du säker på att du vill radera ditt konto? Den här åtgärden är permanent och raderar alla dina data, inklusive telemetrikonfigurationer och Telegram-varningar. Åtgärden kan inte ångras.", + "Back to Dashboard": "Tillbaka till instrumentpanelen", + "You're on the Waitlist!": "Du står på väntelistan!", + "Thank you for your interest in SentryGuard": "Tack för ditt intresse för SentryGuard", + "We have received your registration for": "Vi har tagit emot din registrering för", + "Your account is pending approval. We'll send you an email once your account has been approved and you can start using SentryGuard.": "Ditt konto väntar på godkännande. Vi skickar ett e-postmeddelande så snart ditt konto har godkänts och du kan börja använda SentryGuard.", + "Approval is typically processed within 24-48 hours.": "Godkännande behandlas vanligtvis inom 24–48 timmar.", + "No email within 72 hours? Check your spam or promotions folder.": "Inget e-postmeddelande inom 72 timmar? Kontrollera din skräppost- eller kampanjmapp.", + "Back to home": "Tillbaka till startsidan", + "Join our Discord community while you wait": "Gå med i vår Discord-community medan du väntar!", + "Join Discord": "Gå med i Discord", + "Waitlist": "Väntelista", + "Why is there a waitlist?": "Varför finns det en väntelista?", + "Why is there a waitlist answer": "SentryGuard hanterar åtkomst via en väntelista för att säkerställa att tjänsten förblir stabil och pålitlig för alla användare. När vi fortsätter att växa hjälper väntelistan oss att smidigt introducera nya användare.", + "How long does waitlist approval take?": "Hur lång tid tar godkännandet på väntelistan?", + "How long does waitlist approval take answer": "Kontogodkännanden behandlas vanligtvis inom 24 till 48 timmar. Du får ett välkomstmeddelande via e-post så snart ditt konto har godkänts.", + "What happens after I'm approved?": "Vad händer efter att jag har godkänts?", + "What happens after I'm approved answer": "När du har godkänts får du ett välkomstmeddelande via e-post med en steg-för-steg-guide för att komma igång. Du får tillgång till din instrumentpanel där du kan konfigurera Telegram-varningar, para ihop en virtuell nyckel med ditt fordon och aktivera telemetriövervakning.", + "I signed up but didn't receive an approval email": "Jag registrerade mig men fick inget godkännandemejl. Vad ska jag göra?", + "I signed up but didn't receive an approval email answer": "Kontrollera först dina skräppost- och kampanjmappar. Välkomstmejlet skickas automatiskt när ditt konto har godkänts. Om du har frågor om din status, kontakta oss på hello@sentryguard.org med din e-postadress.", + "Can I check my waitlist status?": "Kan jag kontrollera min status på väntelistan?", + "Can I check my waitlist status answer": "Du kan kontrollera din status genom att försöka logga in. Om du omdirigeras till väntelistesidan väntar ditt konto fortfarande på godkännande. När det har godkänts kan du logga in normalt till din instrumentpanel.", + "Can I use SentryGuard while on the waitlist?": "Kan jag använda SentryGuard medan jag står på väntelistan?", + "Can I use SentryGuard while on the waitlist answer": "Nej, du behöver vänta på godkännande för att få åtkomst till instrumentpanelen och använda SentryGuards funktioner. Medan du väntar rekommenderar vi att du utforskar vår FAQ och dokumentation för att förbereda dig inför att ditt konto godkänns.", + "What if I try to log in before being approved?": "Vad händer om jag försöker logga in innan jag har godkänts?", + "What if I try to log in before being approved answer": "Du omdirigeras till väntelistesidan där du kan se din e-postadress. Du står kvar på väntelistan tills vi godkänner ditt konto, varefter du kan logga in normalt.", + "Link Your Telegram Account": "Länka ditt Telegram-konto", + "You will receive instant alerts when suspicious activity is detected": "Du får omedelbara varningar när misstänkt aktivitet upptäcks", + "💡 You are about to open Telegram. Once you've linked your account, return to SentryGuard to continue.": "💡 Du är på väg att öppna Telegram. När du har länkat ditt konto, återgå till SentryGuard för att fortsätta.", + "How it works:": "Så fungerar det:", + "Click \"Generate Telegram Link\"": "Klicka på \"Generera Telegram-länk\"", + "Click the link to open Telegram": "Klicka på länken för att öppna Telegram", + "The bot will automatically link your account": "Boten länkar automatiskt ditt konto", + "Return here and continue": "Återgå hit och fortsätt", + "Set Up Virtual Key": "Konfigurera virtuell nyckel", + "Pair a virtual key with your vehicle in the Tesla app": "Para ihop en virtuell nyckel med ditt fordon i Tesla-appen", + "🔐 This action happens entirely in the Tesla app. Once finished, return to SentryGuard to continue.": "🔐 Den här åtgärden sker helt och hållet i Tesla-appen. När du är klar, återgå till SentryGuard för att fortsätta.", + "How to pair a virtual key:": "Så parar du ihop en virtuell nyckel:", + "Click \"Open Tesla App\" button below": "Klicka på knappen \"Öppna Tesla-appen\" nedan", + "The Tesla app will open and show a confirmation dialog": "Tesla-appen öppnas och visar en bekräftelsedialog", + "Approve the virtual key request in the Tesla app": "Godkänn begäran om virtuell nyckel i Tesla-appen", + "Return to SentryGuard to continue setup": "Återgå till SentryGuard för att fortsätta konfigurationen", + "Open Tesla App": "Öppna Tesla-appen", + "I've opened the Tesla app": "Jag har öppnat Tesla-appen", + "I've linked my Telegram": "Jag har länkat mitt Telegram", + "⏱️ Once you've opened the Tesla app and approved the virtual key, click the button above to continue.": "⏱️ När du har öppnat Tesla-appen och godkänt den virtuella nyckeln, klicka på knappen ovan för att fortsätta.", + "Confirm Virtual Key Setup": "Bekräfta konfiguration av virtuell nyckel", + "Verify that the virtual key was paired successfully": "Verifiera att den virtuella nyckeln parades ihop korrekt", + "✅ Virtual key detected!": "✅ Virtuell nyckel upptäckt!", + "⏳ Waiting for you to complete the virtual key setup in the Tesla app...": "⏳ Väntar på att du slutför konfigurationen av den virtuella nyckeln i Tesla-appen...", + "No virtual key was detected. Please complete the setup in the Tesla app and try again.": "Ingen virtuell nyckel upptäcktes. Slutför konfigurationen i Tesla-appen och försök igen.", + "Failed to check virtual key status. Please try again.": "Det gick inte att kontrollera den virtuella nyckelns status. Försök igen.", + "What to expect:": "Vad du kan förvänta dig:", + "You approved the virtual key in the Tesla app": "Du godkände den virtuella nyckeln i Tesla-appen", + "The key is now paired with your vehicle account": "Nyckeln är nu ihopparad med ditt fordonskonto", + "You can now enable telemetry monitoring": "Du kan nu aktivera telemetriövervakning", + "I've completed the Tesla app setup": "Jag har slutfört konfigurationen i Tesla-appen", + "Checking...": "Kontrollerar...", + "The button will check your vehicle for the paired virtual key": "Knappen kontrollerar om ditt fordon har den ihopparade virtuella nyckeln", + "Continue to Next Step": "Fortsätt till nästa steg", + "Start monitoring your vehicle's Sentry Mode in real-time": "Börja övervaka ditt fordons Sentry Mode i realtid", + "No vehicles found. Please refresh or check your Tesla account.": "Inga fordon hittades. Uppdatera eller kontrollera ditt Tesla-konto.", + "📡 Telemetry monitoring is battery-efficient and uses Tesla's official API. You can enable it for one or more vehicles. You'll receive alerts via Telegram for each enabled vehicle.": "📡 Telemetriövervakning är batterisnål och använder Teslas officiella API. Du kan aktivera den för ett eller flera fordon. Du får varningar via Telegram för varje aktiverat fordon.", + "Complete Onboarding": "Slutför introduktionen", + "Enable telemetry for at least one vehicle to complete setup": "Aktivera telemetri för minst ett fordon för att slutföra konfigurationen", + "Setup Wizard": "Konfigurationsguide", + "Setup Complete!": "Konfigurationen är klar!", + "Your SentryGuard is now fully configured. You will receive instant Telegram alerts when suspicious activity is detected.": "Din SentryGuard är nu fullständigt konfigurerad. Du får omedelbara Telegram-varningar när misstänkt aktivitet upptäcks.", + "Go to Dashboard": "Gå till instrumentpanelen", + "Skip for now": "Hoppa över för nu", + "Skipping...": "Hoppar över...", + "Completing...": "Slutför...", + "Activating...": "Aktiverar...", + "Activate Telemetry": "Aktivera telemetri", + "✅ Telemetry enabled! Your setup is complete.": "✅ Telemetri aktiverad! Din konfiguration är klar.", + "You will now receive instant Telegram alerts when suspicious activity is detected.": "Du får nu omedelbara Telegram-varningar när misstänkt aktivitet upptäcks.", + "What is the purpose of pairing a virtual key with SentryGuard?": "Vad är syftet med att para ihop en virtuell nyckel med SentryGuard?", + "Virtual key purpose explanation": "Den virtuella nyckeln som parats ihop med ditt fordon är SentryGuards säkra identifierare. Den gör att din Tesla kan verifiera att meddelanden om telemetrikonfiguration verkligen kommer från SentryGuard. Detta ger ett extra säkerhetslager utöver den autentiseringstoken som genereras när du först ansluter med Tesla. Ditt fordon verifierar både att du (ägaren) har beviljat behörigheter till SentryGuard och att det verkligen är SentryGuard som använder dessa behörigheter, och inte en komprometterad eller stulen åtkomst.", + "Does SentryGuard work without internet connection?": "Fungerar SentryGuard utan internetanslutning?", + "Internet connection requirement explanation": "Nej, internetåtkomst krävs för att SentryGuard ska fungera. När en Sentry Mode-händelse inträffar behöver din Tesla en internetanslutning (via WiFi eller mobilnät) för att skicka händelsedata till våra servrar, som sedan vidarebefordrar varningen till dig via Telegram. Om ditt fordon befinner sig på en plats utan internetåtkomst (t.ex. ett underjordiskt parkeringsgarage eller ett land där Tesla-anslutning inte är tillgänglig) kan varningar inte skickas förrän fordonet återansluter till internet.", + "Why does the app crash when I use browser translation?": "Varför kraschar appen när jag använder webbläsaröversättning?", + "Browser translation issue explanation": "Att använda webbläsarens automatiska översättningsfunktion (såsom Chromes \"Översätt den här sidan\" eller liknande funktioner i andra webbläsare) kan göra att applikationen kraschar eller beter sig oväntat. SentryGuard stöder redan flera språk inbyggt. I stället för att använda webbläsaröversättning, använd språkväljaren i applikationens navigeringsfält för att växla mellan engelska och franska. Detta säkerställer en stabil upplevelse utan tekniska problem.", + "meta.home.title": "SentryGuard - Skydda din Tesla", + "meta.home.description": "Övervakning i realtid och omedelbara Telegram-varningar för Sentry Mode i ditt Tesla-fordon. Batterisnål, säker och med öppen källkod.", + "meta.home.ogDescription": "Övervakning i realtid och omedelbara Telegram-varningar för Sentry Mode i ditt Tesla-fordon.", + "meta.faq.title": "FAQ - SentryGuard", + "meta.faq.description": "Vanliga frågor om SentryGuard. Lär dig hur du skyddar din Tesla med övervakning av Sentry Mode i realtid och Telegram-varningar.", + "meta.faq.ogDescription": "Vanliga frågor om SentryGuards Tesla-övervakning.", + "Break-in Monitoring": "Inbrottsövervakning", + "Enable Break-in": "Aktivera inbrottsövervakning", + "Disable Break-in": "Inaktivera inbrottsövervakning", + "Failed to update Break-in monitoring": "Det gick inte att uppdatera inbrottsövervakningen", + "Offensive Response": "Offensiv respons", + "offensiveResponseOn": "Signalhorn aktiverat", + "offensiveResponseOff": "Signalhorn inaktiverat", + "offensiveResponseInfo": "När en varning utlöses tutar fordonet med signalhornet eller pruttar i några sekunder.", + "Horn": "Signalhorn", + "Fart": "Prutt", + "offensiveResponseHonk": "Signalhorn aktiverat vid inbrottsvarningar.", + "offensiveResponseFart": "Prutt (boombox) utlöses vid inbrottsvarningar.", + "offensiveResponseDisabled": "Inaktiverad.", + "offensiveChooseDuration": "Välj aktiveringstid:", + "offensiveDuration30m": "30 min", + "offensiveDuration1h": "1 h", + "offensiveDuration2h": "2 h", + "offensiveDuration4h": "4 h", + "offensiveDuration8h": "8 h", + "offensiveDuration24h": "24 h", + "offensiveProlong": "Förläng", + "offensiveCancel": "Avbryt", + "Failed to update offensive response": "Det gick inte att uppdatera den offensiva responsen", + "Auto Sentry Mode": "Automatiskt Sentry Mode", + "autoSentryModeInfo": "När ett inbrottsförsök upptäcks aktiveras Sentry Mode automatiskt så att kamerorna kan spela in.", + "Failed to update auto sentry mode": "Det gick inte att uppdatera automatiskt Sentry Mode", + "Never miss a door ding again.": "Missa aldrig en dörrskråma igen.", + "Get instant Telegram alerts the second your Tesla detects a threat. Zero battery drain.": "Få en omedelbar Telegram-varning i samma sekund som din Tesla upptäcker ett hot. Noll batteriförbrukning.", + "The Tesla App is not enough.": "Tesla-appen räcker inte.", + "The official app only alerts you for direct threats like alarms. For everything else—like door dings or scratches—you're left in the dark until you check your car.": "Den officiella appen varnar dig bara för direkta hot som larm. För allt annat – som dörrskråmor eller repor – hålls du ovetande tills du kollar bilen.", + "Without SentryGuard": "Utan SentryGuard", + "A shopping cart hits your car. The alarm doesn't trigger. The Tesla app stays silent. You find out too late.": "En kundvagn träffar din bil. Larmet utlöses inte. Tesla-appen är tyst. Du upptäcker det för sent.", + "With SentryGuard": "Med SentryGuard", + "Sentry Mode records the event. SentryGuard instantly pushes a Telegram alert to your phone. You can react immediately.": "Sentry Mode spelar in händelsen. SentryGuard skickar omedelbart en Telegram-varning till din telefon. Du kan reagera direkt.", + "How it works": "Så fungerar det", + "1. Connect your Tesla": "1. Anslut din Tesla", + "Securely link your vehicle using official Tesla OAuth. We never see your password.": "Länka ditt fordon säkert med officiell Tesla OAuth. Vi ser aldrig ditt lösenord.", + "2. Smart Telemetry": "2. Smart telemetri", + "Our servers listen to the official telemetry stream. Zero polling means absolutely zero battery drain.": "Våra servrar lyssnar på det officiella telemetriflödet. Noll avfrågning innebär absolut noll batteriförbrukning.", + "3. Instant Alerts": "3. Omedelbara varningar", + "Receive push notifications via our mobile app or Telegram bot the exact second Sentry Mode is triggered.": "Få push-aviseringar via vår mobilapp eller vår Telegram-bot i samma sekund som Sentry Mode utlöses.", + "Support a Community Project": "Stöd ett community-projekt", + "SentryGuard is a 100% free, open-source project built by Tesla owners, for Tesla owners. It is maintained entirely through community donations.": "SentryGuard är ett 100 % gratis projekt med öppen källkod, byggt av Tesla-ägare, för Tesla-ägare. Det underhålls helt och hållet genom donationer från communityn.", + "Zero Battery Impact": "Noll batteripåverkan", + "Protection that doesn't drain your battery.": "Skydd som inte tömmer batteriet.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard integrates deeply with Tesla's API to instantly alert you if someone pulls your door handle—even when Sentry Mode is completely disabled.": "Stänger du av Sentry Mode hemma eller på jobbet för att spara räckvidd? Inga problem. SentryGuard integreras djupt med Teslas API för att omedelbart varna dig om någon drar i ditt dörrhandtag – även när Sentry Mode är helt inaktiverat.", + "Detects break-ins even with Sentry Mode OFF": "Upptäcker inbrott även med Sentry Mode AV", + "Total protection for your Tesla. Zero battery drain.": "Fullständigt skydd för din Tesla. Noll batteriförbrukning.", + "Get instant Telegram alerts for door dings and break-in attempts, even when Sentry Mode is disabled.": "Få omedelbara Telegram-varningar för dörrskråmor och inbrottsförsök, även när Sentry Mode är inaktiverat.", + "The official app only alerts you if the main alarm triggers. SentryGuard fills the critical security gaps.": "Den officiella appen varnar dig bara om huvudlarmet utlöses. SentryGuard fyller de kritiska säkerhetsluckorna.", + "The Tesla app stays silent for door dings. And if you turn off Sentry Mode to save battery, you have absolutely zero protection against break-ins.": "Tesla-appen är tyst vid dörrskråmor. Och om du stänger av Sentry Mode för att spara batteri har du absolut inget skydd mot inbrott.", + "Get instant Telegram alerts when Sentry Mode detects a scratch, OR when someone pulls your locked door handle while Sentry Mode is completely disabled.": "Få omedelbara Telegram-varningar när Sentry Mode upptäcker en repa, ELLER när någon drar i ditt låsta dörrhandtag medan Sentry Mode är helt inaktiverat.", + "Turn off Sentry Mode at home or work to save range? No problem. SentryGuard uses advanced telemetry to instantly alert you if someone pulls your door handle—even when Sentry Mode is off.": "Stänger du av Sentry Mode hemma eller på jobbet för att spara räckvidd? Inga problem. SentryGuard använder avancerad telemetri för att omedelbart varna dig om någon drar i ditt dörrhandtag – även när Sentry Mode är av.", + "Connect our Telegram bot and receive push notifications the exact second a threat is detected.": "Anslut vår Telegram-bot och få push-aviseringar i exakt samma sekund som ett hot upptäcks.", + "Get instant Telegram alerts for Sentry Mode events, and break-in attempts even when Sentry Mode is disabled.": "Få omedelbara Telegram-varningar för Sentry Mode-händelser och inbrottsförsök, även när Sentry Mode är inaktiverat.", + "Two critical features the Tesla App is missing.": "Två kritiska funktioner som saknas i Tesla-appen.", + "The official app leaves gaps in your security. We fill them with instant push notifications and Telegram alerts.": "Den officiella appen lämnar luckor i din säkerhet. Vi fyller dem med omedelbara push-aviseringar och Telegram-varningar.", + "Requires Sentry Mode ON": "Kräver Sentry Mode PÅ", + "1. Sentry Mode Alerts": "1. Sentry Mode-varningar", + "Get notified instantly for door dings, scratches, and parking lot accidents.": "Få omedelbar avisering vid dörrskråmor, repor och parkeringsolyckor.", + "Tesla App": "Tesla-appen", + "Stays silent for minor impacts. You only discover the damage when you get back to your car.": "Är tyst vid mindre stötar. Du upptäcker skadan först när du kommer tillbaka till bilen.", + "Instantly pushes an alert to your phone the moment Sentry Mode triggers, so you can react immediately.": "Skickar omedelbart en varning till din telefon i det ögonblick Sentry Mode utlöses, så att du kan reagera direkt.", + "Works with Sentry Mode OFF": "Fungerar med Sentry Mode AV", + "2. Break-in Detection": "2. Inbrottsdetektering", + "Alerts you if someone pulls your door handle, even when you're saving battery.": "Varnar dig om någon drar i ditt dörrhandtag, även när du sparar batteri.", + "If Sentry Mode is off to save battery at home or at night, you get zero notifications if someone tries to break in.": "Om Sentry Mode är av för att spara batteri hemma eller på natten får du inga aviseringar om någon försöker bryta sig in.", + "Uses advanced telemetry to detect handle pulls and alert you instantly, even when Sentry Mode is disabled.": "Använder avancerad telemetri för att upptäcka handtagsdrag och varna dig omedelbart, även när Sentry Mode är inaktiverat.", + "The missing security alerts for your Tesla.": "De säkerhetsvarningar som din Tesla saknar.", + "Get an instant push notification the second Sentry Mode records a threat, or when someone pulls your door handle—even if you disabled Sentry Mode to save battery.": "Få en omedelbar push-avisering i samma sekund som Sentry Mode spelar in ett hot, eller när någon drar i ditt dörrhandtag – även om du inaktiverade Sentry Mode för att spara batteri.", + "Unlock commands": "Lås upp kommandon", + "Authorize SentryGuard to interact with your vehicle.": "Auktorisera SentryGuard att interagera med ditt fordon.", + "Authorize": "Auktorisera", + "offensiveResponseLockedTitle": "Behörighet för fordonskommandon krävs", + "offensiveResponseLockedDescription": "Automatiskt Sentry Mode och offensiv respons kräver behörighet att skicka kommandon till din Tesla.", + "offensiveResponseLockedButton": "Godkänn fordonskommandon", + "Privacy Policy": "Integritetspolicy", + "Terms of Service": "Användarvillkor", + "New features available": "Nya funktioner tillgängliga", + "SentryGuard has new advanced security capabilities to better protect your Tesla.": "SentryGuard har nya avancerade säkerhetsfunktioner för att skydda din Tesla bättre.", + "Detects intrusion attempts on your vehicle. You receive an instant Telegram alert as soon as a break-in attempt is detected.": "Upptäcker intrångsförsök på ditt fordon. Du får en omedelbar Telegram-varning så snart ett inbrottsförsök upptäcks.", + "Offensive Response (Horn)": "Offensiv respons (signalhorn)", + "When the offensive response is active, your vehicle horn triggers automatically upon detection to deter intruders immediately.": "När den offensiva responsen är aktiv utlöses fordonets signalhorn automatiskt vid en detektering för att omedelbart avskräcka inkräktare.", + "💡 These features are available in the Vehicles section. You can enable break-in monitoring and configure the offensive response for each vehicle independently.": "💡 Dessa funktioner finns i avsnittet Fordon. Du kan aktivera inbrottsövervakning och konfigurera den offensiva responsen för varje fordon oberoende.", + "Understood, let's go!": "Uppfattat, kör igång!", + "Failed to continue, please try again": "Det gick inte att fortsätta, försök igen.", + "Security Shield Configuration": "Konfiguration av säkerhetssköld", + "Configure the security features for this vehicle below.": "Konfigurera säkerhetsfunktionerna för det här fordonet nedan.", + "Receive alerts on Telegram when an intrusion is detected": "Få varningar på Telegram när ett intrång upptäcks", + "Enable Sentry Mode Monitoring": "Aktivera övervakning av Sentry Mode", + "Activate Sentry Mode Monitoring": "Aktivera övervakning av Sentry Mode", + "✅ Security monitoring enabled! Your setup is complete.": "✅ Säkerhetsövervakning aktiverad! Din konfiguration är klar.", + "Four critical features the Tesla App is missing.": "Fyra kritiska funktioner som Tesla-appen saknar.", + "Three critical features the Tesla App is missing.": "Tre kritiska funktioner som saknas i Tesla-appen.", + "Smart Recording": "Smart inspelning", + "3. Auto Sentry Activation": "3. Automatisk Sentry-aktivering", + "Automatically wakes up Sentry Mode and starts camera recording the second a break-in attempt is detected, even if Sentry was off.": "Väcker automatiskt Sentry Mode och startar kamerainspelningen i samma sekund som ett inbrottsförsök upptäcks, även om Sentry var avstängt.", + "If Sentry Mode is off to save battery, cameras remain offline. You get zero video footage of the incident.": "Om Sentry Mode är avstängt för att spara batteri förblir kamerorna offline. Du får ingen videoinspelning av händelsen.", + "Instantly arms Sentry Mode upon handle pull or breach attempt, waking up all cameras to capture the suspect on video.": "Aktiverar Sentry Mode omedelbart när någon drar i dörrhandtaget eller vid ett intrångsförsök och väcker alla kameror för att filma gärningspersonen på video.", + "4. Active Deterrent": "4. Aktiv avskräckning", + "3. Active Deterrent": "3. Aktivt avskräckande", + "Automatically scare off intruders by triggering your vehicle's horn or boombox sound the moment a break-in is detected.": "Skräm bort inkräktare automatiskt genom att utlösa fordonets signalhorn eller boombox-ljud i det ögonblick ett inbrott upptäcks.", + "Stays passive and silent. The intruder can continue their attempt without any immediate local deterrent.": "Förblir passiv och tyst. Inkräktaren kan fortsätta sitt försök utan något omedelbart lokalt avskräckande.", + "Triggers a loud sound deterrent within seconds to alert bystanders and scare away the intruder.": "Smart avskräckande. Ljudvarningar utlöses endast av verkliga hot (som handtagsdrag), vilket förhindrar irriterande falsklarm.", + "Active Defense": "Aktivt försvar", + "What is the Active Deterrent (Offensive Response) and how does it work?": "Vad är det aktiva avskräckandet (offensiv respons) och hur fungerar det?", + "Active deterrent explanation": "Det aktiva avskräckandet är en säkerhetsfunktion som automatiskt utlöser en ljudåtgärd från ditt fordon (signalhorn eller boombox-prutt) när ett verkligt, fysiskt intrång upptäcks (som ett dörrhandtagsdrag). Till skillnad från andra appar som tutar vid minsta kamerarörelse (vilket orsakar ständiga falsklarm) använder vårt system telemetri för att endast reagera på verkliga hot. Den här funktionen är helt valfri, inaktiverad som standard och kan konfigureras eller inaktiveras fullständigt när som helst för varje fordon från din instrumentpanel.", + "Do I have to grant write permissions (vehicle commands) to SentryGuard?": "Måste jag bevilja skrivbehörigheter (fordonskommandon) till SentryGuard?", + "Write permissions requirement explanation": "Nej. SentryGuard fungerar perfekt i ett helt passivt (skrivskyddat) läge om du bara vill ta emot Telegram-varningsaviseringar. Behörigheten att skicka styrkommandon begärs och krävs endast om du uttryckligen väljer att aktivera funktionen Aktivt avskräckande för att utlösa signalhornet eller boombox-ljudet vid ett intrång. Om du inte aktiverar denna funktion behöver SentryGuard ingen som helst skrivåtkomst till din Tesla.", + "Get the app": "Skaffa appen", + "Get the mobile app": "Ladda ner mobilappen", + "or": "eller" +}