|
|
@@ -0,0 +1,452 @@
|
|
|
+/* AppBrand.name ("Meetings") навмисно пропущено — назва програми залишається незмінною в коді. */
|
|
|
+"AI Companion for Meet" = "AI-помічник для Міт";
|
|
|
+
|
|
|
+/* MARK: - Загальне */
|
|
|
+"OK" = "OK";
|
|
|
+"Cancel" = "Скасувати";
|
|
|
+"Continue" = "Продовжити";
|
|
|
+"Apply" = "Застосувати";
|
|
|
+"Reset" = "Скинути";
|
|
|
+"Save" = "Зберегти";
|
|
|
+"Copy" = "Копіювати";
|
|
|
+"Copied" = "Скопійовано";
|
|
|
+"Close" = "Закрити";
|
|
|
+"Join" = "Приєднатися";
|
|
|
+"None" = "Немає";
|
|
|
+"Link" = "Посилання";
|
|
|
+"Stop" = "Зупинити";
|
|
|
+"Address" = "Адреса";
|
|
|
+"Title" = "Назва";
|
|
|
+"Notes" = "Нотатки";
|
|
|
+"Start" = "Почати";
|
|
|
+"Premium" = "Преміум";
|
|
|
+"Popular" = "Популярне";
|
|
|
+"Browser" = "Браузер";
|
|
|
+"Meeting" = "Зустріч";
|
|
|
+"Error" = "Помилка";
|
|
|
+"Success" = "Успіх";
|
|
|
+
|
|
|
+/* MARK: - Рядок стану */
|
|
|
+"Meetings status menu" = "Меню стану зустрічей";
|
|
|
+"Open App" = "Відкрити додаток";
|
|
|
+"Join Meetings" = "Приєднатися до зустрічей";
|
|
|
+"Schedule" = "Розклад";
|
|
|
+"Calendar" = "Календар";
|
|
|
+"Widgets" = "Віджети";
|
|
|
+"AI Companion" = "AI-помічник";
|
|
|
+"Settings" = "Налаштування";
|
|
|
+"Top meetings" = "Закріплені зустрічі";
|
|
|
+"No upcoming meetings" = "Немає майбутніх зустрічей";
|
|
|
+"Sign Out" = "Вийти";
|
|
|
+"Sign In" = "Увійти";
|
|
|
+"Quit" = "Вийти з програми";
|
|
|
+
|
|
|
+/* MARK: - Головний екран */
|
|
|
+"Preparing your meetings workspace" = "Підготовка робочого простору для зустрічей";
|
|
|
+"CONNECTING SERVICES" = "ПІДКЛЮЧЕННЯ СЕРВІСІВ";
|
|
|
+"READY" = "ГОТОВО";
|
|
|
+"Plan smart, achieve more" = "Плануй розумно, досягай більшого";
|
|
|
+
|
|
|
+/* MARK: - Віджети */
|
|
|
+"Add Widget to Desktop" = "Додати віджет на робочий стіл";
|
|
|
+"Choose a size and add your Google Meet widget." = "Виберіть розмір і додайте віджет «Міт» від Гугл.";
|
|
|
+"Tip: Right-click a desktop widget to remove it." = "Порада: Клацніть правою кнопкою миші на віджеті робочого столу, щоб видалити його.";
|
|
|
+"Removed %@ widget from desktop." = "Віджет %@ видалено з робочого столу.";
|
|
|
+"Added %@ widget from desktop." = "Віджет %@ додано з робочого столу.";
|
|
|
+"Added %@ widget to desktop." = "Віджет %@ додано на робочий стіл.";
|
|
|
+"Widgets are Premium only. Upgrade to add widgets." = "Віджети доступні лише для Преміум. Оновіть, щоб додавати віджети.";
|
|
|
+"Remove Widget" = "Видалити віджет";
|
|
|
+"Small" = "Малий";
|
|
|
+"Medium" = "Середній";
|
|
|
+"Quick actions" = "Швидкі дії";
|
|
|
+"Open Meet" = "Відкрити Міт";
|
|
|
+"Upcoming meetings" = "Майбутні зустрічі";
|
|
|
+"Sign in to see upcoming meetings" = "Увійдіть, щоб побачити майбутні зустрічі";
|
|
|
+"Sign in with Google" = "Увійти через Гугл";
|
|
|
+"Google Meet" = "«Міт» від Гугл";
|
|
|
+"Open and join quickly" = "Швидко відкрити та приєднатися";
|
|
|
+"Refresh" = "Оновити";
|
|
|
+
|
|
|
+/* MARK: - Бічна панель і навігація */
|
|
|
+"Planning" = "Планування";
|
|
|
+"Additional" = "Додатково";
|
|
|
+"Get Premium" = "Отримати Преміум";
|
|
|
+"Manage Subscription" = "Керування підпискою";
|
|
|
+"App for Google Meet" = "Додаток для «Міт» від Гугл";
|
|
|
+
|
|
|
+/* MARK: - Приєднання до зустрічі */
|
|
|
+"New Instant Meet" = "Нова миттєва зустріч";
|
|
|
+"Start instant Meet in more section with\nGoogle Meet meet." = "Розпочніть миттєвий Міт у розділі «Більше»\nза допомогою «Міт» від Гугл.";
|
|
|
+"Join with Link" = "Приєднатися за посиланням";
|
|
|
+"Code or meet.google.com/…" = "Код або meet.google.com/…";
|
|
|
+"Join with ID" = "Приєднатися за ID";
|
|
|
+"Join with URL" = "Приєднатися за URL";
|
|
|
+"Meeting URL" = "URL зустрічі";
|
|
|
+"Enter meeting URL..." = "Введіть URL зустрічі...";
|
|
|
+"Quick Join Meeting" = "Швидке приєднання до зустрічі";
|
|
|
+"Invalid Meet link" = "Недійсне посилання «Міт»";
|
|
|
+"Enter a valid Google Meet link or meeting code (for example nkd-grps-duv, meet.google.com/nkd-grps-duv, or https://meet.google.com/nkd-grps-duv)." = "Введіть дійсне посилання «Міт» від Гугл або код зустрічі (наприклад, nkd-grps-duv, meet.google.com/nkd-grps-duv або https://meet.google.com/nkd-grps-duv).";
|
|
|
+"Instant Meeting" = "Миттєва зустріч";
|
|
|
+"Connect Google to start Instant Meeting" = "Підключіть Гугл, щоб розпочати миттєву зустріч";
|
|
|
+"To auto-stop recording when the meeting ends, connect your Google account first." = "Щоб автоматично зупинити запис після закінчення зустрічі, спочатку підключіть обліковий запис Гугл.";
|
|
|
+"Could not create Instant Meeting" = "Не вдалося створити миттєву зустріч";
|
|
|
+"Free trial used. Upgrade to continue." = "Безкоштовний пробний період вичерпано. Оновіть, щоб продовжити.";
|
|
|
+
|
|
|
+/* MARK: - Перегляд веб-сторінок */
|
|
|
+"Browse the web" = "Перегляд веб-сторінок";
|
|
|
+"Enter a web address (for example meet.google.com)." = "Введіть веб-адресу (наприклад, meet.google.com).";
|
|
|
+"Invalid address" = "Недійсна адреса";
|
|
|
+"Enter a valid http or https URL." = "Введіть дійсний URL http або https.";
|
|
|
+"Browse" = "Переглянути";
|
|
|
+"Quick links" = "Швидкі посилання";
|
|
|
+"Zoom help" = "Довідка Zoom";
|
|
|
+"https://example.com or example.com" = "https://example.com або example.com";
|
|
|
+"Enter a valid web address, for example https://example.com" = "Введіть дійсну веб-адресу, наприклад https://example.com";
|
|
|
+"Address not allowed" = "Адреса не дозволена";
|
|
|
+"This URL is not permitted with the current in-app browser policy (whitelist)." = "Цей URL не дозволений поточною політикою браузера в додатку (білий список).";
|
|
|
+"Unable to load page" = "Не вдалося завантажити сторінку";
|
|
|
+"Could not load this page in the in-app browser.\n\n%@" = "Не вдалося завантажити цю сторінку в браузері додатку.\n\n%@";
|
|
|
+"Page stopped loading" = "Завантаження сторінки зупинено";
|
|
|
+"Unable to open browser" = "Не вдалося відкрити браузер";
|
|
|
+"Unable to Open Safari" = "Не вдалося відкрити Safari";
|
|
|
+
|
|
|
+/* MARK: - Планування та календар */
|
|
|
+"All" = "Усі";
|
|
|
+"Today" = "Сьогодні";
|
|
|
+"This week" = "Цього тижня";
|
|
|
+"This month" = "Цього місяця";
|
|
|
+"Previous week" = "Минулий тиждень";
|
|
|
+"Previous month" = "Минулий місяць";
|
|
|
+"Custom range" = "Власний діапазон";
|
|
|
+"No meetings match the selected filters." = "Немає зустрічей, що відповідають вибраним фільтрам.";
|
|
|
+"Adjust the date range and tap Apply." = "Налаштуйте діапазон дат і натисніть Застосувати.";
|
|
|
+"Premium required. Get Premium now to unlock Calendar." = "Потрібен Преміум. Отримайте Преміум зараз, щоб розблокувати Календар.";
|
|
|
+"Premium required. Click to open paywall." = "Потрібен Преміум. Клацніть, щоб відкрити платіжний екран.";
|
|
|
+"Get Premium to see events" = "Отримайте Преміум, щоб бачити події";
|
|
|
+"Connect Google" = "Підключити Гугл";
|
|
|
+"Sign in with Google first to schedule a meeting from Calendar." = "Спочатку ввійдіть через Гугл, щоб запланувати зустріч із Календаря.";
|
|
|
+"Select date" = "Вибрати дату";
|
|
|
+"Choose a date to schedule your meeting." = "Виберіть дату, щоб запланувати зустріч.";
|
|
|
+"Google schedule" = "Розклад Гугл";
|
|
|
+"To show scheduled meetings, connect your Google account. You’ll need a Google OAuth client ID (Desktop) and a redirect URI matching the app’s callback scheme." = "Щоб показувати заплановані зустрічі, підключіть обліковий запис Гугл. Вам знадобиться ідентифікатор клієнта OAuth Гугл (Desktop) і URI переспрямування, що відповідає схемі зворотного виклику додатку.";
|
|
|
+"Actions" = "Дії";
|
|
|
+"Schedule meeting" = "Запланувати зустріч";
|
|
|
+"Team sync" = "Синхронізація команди";
|
|
|
+"Duration (min)" = "Тривалість (хв)";
|
|
|
+"Refresh saved meetings" = "Оновити збережені зустрічі";
|
|
|
+
|
|
|
+/* MARK: - Налаштування */
|
|
|
+"Manage appearance, account, and app options." = "Керування виглядом, обліковим записом і параметрами додатку.";
|
|
|
+"Appearance" = "Вигляд";
|
|
|
+"Account" = "Обліковий запис";
|
|
|
+"App" = "Додаток";
|
|
|
+"Notifications" = "Сповіщення";
|
|
|
+"Help & Legal" = "Довідка та юридична інформація";
|
|
|
+"Dark Mode" = "Темний режим";
|
|
|
+"Language" = "Мова";
|
|
|
+"System Language" = "Мова системи";
|
|
|
+"Rate Us" = "Оцініть нас";
|
|
|
+"Share App" = "Поділитися додатком";
|
|
|
+"Upgrade" = "Оновити";
|
|
|
+"Privacy Policy" = "Політика конфіденційності";
|
|
|
+"Support" = "Підтримка";
|
|
|
+"Terms of Services" = "Умови використання";
|
|
|
+"AI Language 1" = "Мова AI 1";
|
|
|
+"AI Language 2" = "Мова AI 2";
|
|
|
+"Google account connected" = "Обліковий запис Гугл підключено";
|
|
|
+"Google account not connected" = "Обліковий запис Гугл не підключено";
|
|
|
+"Signed in" = "Увійшли";
|
|
|
+"Sign in to sync your meetings and calendar." = "Увійдіть, щоб синхронізувати зустрічі та календар.";
|
|
|
+"Log out" = "Вийти";
|
|
|
+"Check out %@ for managing and joining meetings." = "Спробуйте %@ для керування та приєднання до зустрічей.";
|
|
|
+"Meetings App" = "Додаток Зустрічі";
|
|
|
+
|
|
|
+/* MARK: - Згода на запис */
|
|
|
+"Record this meeting locally?" = "Записати цю зустріч локально?";
|
|
|
+"With your consent, the app will record meeting audio on this Mac and show it in AI Companion after the meeting." = "За вашою згодою додаток записуватиме аудіо зустрічі на цьому Mac і показуватиме його в AI-помічнику після зустрічі.";
|
|
|
+"Allow and Continue" = "Дозволити та продовжити";
|
|
|
+"Continue Without Recording" = "Продовжити без запису";
|
|
|
+"Transcription Languages" = "Мови транскрипції";
|
|
|
+"Preferred Language 1" = "Бажана мова 1";
|
|
|
+"Preferred Language 2" = "Бажана мова 2";
|
|
|
+"Microphone permission denied" = "Доступ до мікрофона заборонено";
|
|
|
+"Microphone permission required" = "Потрібен доступ до мікрофона";
|
|
|
+"Enable microphone access in System Settings to record meetings locally." = "Увімкніть доступ до мікрофона в Системних налаштуваннях, щоб записувати зустрічі локально.";
|
|
|
+"Could not start recording" = "Не вдалося розпочати запис";
|
|
|
+"Recording will start when the meeting starts" = "Запис розпочнеться, коли почнеться зустріч";
|
|
|
+"Meeting recording started (meeting + microphone)" = "Запис зустрічі розпочато (зустріч + мікрофон)";
|
|
|
+"System audio unavailable. Recording microphone only." = "Системний звук недоступний. Запис лише з мікрофона.";
|
|
|
+"Meeting recording started (microphone only)" = "Запис зустрічі розпочато (лише мікрофон)";
|
|
|
+"Meeting recording saved" = "Запис зустрічі збережено";
|
|
|
+
|
|
|
+/* MARK: - AI-помічник */
|
|
|
+"Get notes from your previous meetings" = "Отримайте нотатки з попередніх зустрічей";
|
|
|
+"Connect your Google account to see your AI Companion meeting history." = "Підключіть обліковий запис Гугл, щоб переглянути історію зустрічей AI-помічника.";
|
|
|
+"No previous meetings yet for %@. End a meeting to save it here and generate notes." = "Ще немає попередніх зустрічей для %@. Завершіть зустріч, щоб зберегти її тут і створити нотатки.";
|
|
|
+"this account" = "цей обліковий запис";
|
|
|
+"Previous meetings" = "Попередні зустрічі";
|
|
|
+"Recording in progress: %@" = "Триває запис: %@";
|
|
|
+"Started: %@" = "Розпочато: %@";
|
|
|
+"Stop Recording" = "Зупинити запис";
|
|
|
+"Date: %@" = "Дата: %@";
|
|
|
+"Saved time: %@" = "Збережений час: %@";
|
|
|
+"Get Notes" = "Отримати нотатки";
|
|
|
+"Premium required. Click to unlock AI Companion notes." = "Потрібен Преміум. Клацніть, щоб розблокувати нотатки AI-помічника.";
|
|
|
+"Play Audio" = "Відтворити аудіо";
|
|
|
+"Pause Audio" = "Призупинити аудіо";
|
|
|
+"Stopped" = "Зупинено";
|
|
|
+"Speaking..." = "Говорить...";
|
|
|
+"Paused" = "Призупинено";
|
|
|
+"Playing..." = "Відтворення...";
|
|
|
+"Not playing" = "Не відтворюється";
|
|
|
+"Checking audio..." = "Перевірка аудіо...";
|
|
|
+"Audio file missing" = "Аудіофайл відсутній";
|
|
|
+"Could not play recording" = "Не вдалося відтворити запис";
|
|
|
+"Failed: %@" = "Помилка: %@";
|
|
|
+"Failed to play audio" = "Не вдалося відтворити аудіо";
|
|
|
+"decode error" = "помилка декодування";
|
|
|
+"Loading..." = "Завантаження...";
|
|
|
+"Buffering..." = "Буферизація...";
|
|
|
+"Finished" = "Завершено";
|
|
|
+"Transcript not requested" = "Транскрипцію не запитано";
|
|
|
+"Transcript processing..." = "Обробка транскрипції...";
|
|
|
+"Transcript ready" = "Транскрипція готова";
|
|
|
+"Transcript unavailable (tap to retry)" = "Транскрипція недоступна (торкніться, щоб повторити)";
|
|
|
+"Notes not requested" = "Нотатки не запитано";
|
|
|
+"Preparing notes, please wait..." = "Підготовка нотаток, зачекайте...";
|
|
|
+"Notes ready" = "Нотатки готові";
|
|
|
+"Notes unavailable (tap to retry)" = "Нотатки недоступні (торкніться, щоб повторити)";
|
|
|
+"Transcript unavailable" = "Транскрипція недоступна";
|
|
|
+"Notes unavailable" = "Нотатки недоступні";
|
|
|
+"Could not find recording details for this meeting." = "Не вдалося знайти деталі запису для цієї зустрічі.";
|
|
|
+"Transcript - %@" = "Транскрипція - %@";
|
|
|
+"Notes - %@" = "Нотатки - %@";
|
|
|
+"Meeting Notes" = "Нотатки зустрічі";
|
|
|
+
|
|
|
+/* MARK: - Платіжний екран і StoreKit */
|
|
|
+"Meetings Pro" = "Зустрічі Pro";
|
|
|
+"PREMIUM EXPERIENCE" = "ПРЕМІУМ ДОСВІД";
|
|
|
+"Elevate your meetings workflow" = "Покращте робочий процес зустрічей";
|
|
|
+"Unlock automation, premium meeting tools, and priority support for every session." = "Розблокуйте автоматизацію, преміум-інструменти для зустрічей і пріоритетну підтримку для кожної сесії.";
|
|
|
+"Manage meetings" = "Керування зустрічами";
|
|
|
+"Smart scheduling" = "Розумне планування";
|
|
|
+"Faster workflow" = "Швидший робочий процес";
|
|
|
+"Reminder notifications" = "Сповіщення-нагадування";
|
|
|
+"Monthly" = "Щомісячно";
|
|
|
+"Bi Yearly" = "Раз на півроку";
|
|
|
+"Yearly" = "Щорічно";
|
|
|
+"Most Popular" = "Найпопулярніше";
|
|
|
+"%@ • Most Popular" = "%@ • Найпопулярніше";
|
|
|
+"3 days free trial" = "3 дні безкоштовного пробного періоду";
|
|
|
+"Cancel anytime" = "Скасуйте в будь-який час";
|
|
|
+"No lock-in" = "Без зобов'язань";
|
|
|
+"Instant access" = "Миттєвий доступ";
|
|
|
+"Unlock all tools" = "Розблокуйте всі інструменти";
|
|
|
+"Secure billing" = "Безпечна оплата";
|
|
|
+"Handled by Apple" = "Обробляється Епл";
|
|
|
+"Secured by Apple. Cancel anytime." = "Захищено Епл. Скасуйте в будь-який час.";
|
|
|
+"Restore Purchase" = "Відновити покупку";
|
|
|
+"Continue with free plan" = "Продовжити з безкоштовним планом";
|
|
|
+"Already Premium" = "Вже Преміум";
|
|
|
+"You are already premium. Do you want to continue with this purchase?" = "У вас уже є Преміум. Бажаєте продовжити цю покупку?";
|
|
|
+"Current plan: %@. Choose a different package to switch." = "Поточний план: %@. Виберіть інший пакет, щоб змінити.";
|
|
|
+"Premium is active on this Apple ID." = "Преміум активний для цього ідентифікатора Епл.";
|
|
|
+"Free for %@, then %@" = "Безкоштовно протягом %@, потім %@";
|
|
|
+"Billed via App Store" = "Оплата через App Store";
|
|
|
+"%@ • %@" = "%@ • %@";
|
|
|
+"Save 0%" = "Заощадьте 0%";
|
|
|
+"Save %@%%" = "Заощадьте %@%%";
|
|
|
+"month" = "місяць";
|
|
|
+"year" = "рік";
|
|
|
+"%@ free trial" = "%@ безкоштовний пробний період";
|
|
|
+"Processing..." = "Обробка...";
|
|
|
+"Premium Active" = "Преміум активний";
|
|
|
+"Continue with 3 day trail" = "Продовжити з 3-денним пробним періодом";
|
|
|
+"Please Wait" = "Зачекайте";
|
|
|
+"A purchase is already being processed." = "Покупка вже обробляється.";
|
|
|
+"This Apple ID already has premium access." = "Цей ідентифікатор Епл уже має доступ до Преміум.";
|
|
|
+"Purchase Complete" = "Покупку завершено";
|
|
|
+"Premium has been unlocked successfully." = "Преміум успішно розблоковано.";
|
|
|
+"Purchase Pending" = "Покупка очікує";
|
|
|
+"Your purchase is pending approval. You can continue once it completes." = "Ваша покупка очікує підтвердження. Ви можете продовжити після її завершення.";
|
|
|
+"Product Not Available" = "Продукт недоступний";
|
|
|
+"Unable to load this product. Check your StoreKit configuration and product IDs." = "Не вдалося завантажити цей продукт. Перевірте конфігурацію StoreKit та ідентифікатори продуктів.";
|
|
|
+"Already Purchased" = "Вже придбано";
|
|
|
+"This plan is already active on your Apple ID." = "Цей план уже активний для вашого ідентифікатора Епл.";
|
|
|
+"Purchase Failed" = "Помилка покупки";
|
|
|
+"Restore Purchases" = "Відновити покупки";
|
|
|
+"Purchases restored successfully." = "Покупки успішно відновлено.";
|
|
|
+"No previous premium purchase was found for this Apple ID." = "Попередніх покупок Преміум для цього ідентифікатора Епл не знайдено.";
|
|
|
+"Restore failed: %@" = "Помилка відновлення: %@";
|
|
|
+"Unable to Open Subscriptions" = "Не вдалося відкрити Підписки";
|
|
|
+"The subscriptions URL is invalid." = "URL підписок недійсний.";
|
|
|
+"%@ tapped." = "Торкнуто %@.";
|
|
|
+
|
|
|
+/* MARK: - Автентифікація */
|
|
|
+"Google Sign-In" = "Вхід через Гугл";
|
|
|
+
|
|
|
+/* MARK: - Помилки розпізнавання мовлення/транскрипції */
|
|
|
+"Speech recognition permission denied. Enable it in System Settings and try again." = "Доступ до розпізнавання мовлення заборонено. Увімкніть його в Системних налаштуваннях і спробуйте знову.";
|
|
|
+"Speech recognition is restricted on this Mac." = "Розпізнавання мовлення обмежено на цьому Mac.";
|
|
|
+"Speech recognition authorization is unavailable." = "Авторизація розпізнавання мовлення недоступна.";
|
|
|
+"Speech recognizer is unavailable for the current locale." = "Розпізнавач мовлення недоступний для поточної локалі.";
|
|
|
+"Speech recognizer is unavailable for %@." = "Розпізнавач мовлення недоступний для %@.";
|
|
|
+"No audio was available to transcribe." = "Немає аудіо для транскрипції.";
|
|
|
+
|
|
|
+/* MARK: - Помилки транзакцій StoreKit */
|
|
|
+"Unable to load products: %@" = "Не вдалося завантажити продукти: %@";
|
|
|
+"Product ID not found in StoreKit response. Requested: %@. Loaded IDs: %@" = "Ідентифікатор продукту не знайдено у відповіді StoreKit. Запитано: %@. Завантажені ID: %@";
|
|
|
+"Purchase verification failed." = "Помилка перевірки покупки.";
|
|
|
+"Unknown purchase state." = "Невідомий стан покупки.";
|
|
|
+"none" = "немає";
|
|
|
+
|
|
|
+/* MARK: - Тексти цін на платіжному екрані */
|
|
|
+"%@ one-time purchase" = "%@ одноразова покупка";
|
|
|
+"%@/month" = "%@/місяць";
|
|
|
+"%@/6 months" = "%@/6 місяців";
|
|
|
+"%@/year (3 days free trial)" = "%@/рік (3 дні безкоштовного пробного періоду)";
|
|
|
+"day" = "день";
|
|
|
+"week" = "тиждень";
|
|
|
+"period" = "період";
|
|
|
+"1 %@" = "1 %@";
|
|
|
+"%d %@s" = "%d %@";
|
|
|
+
|
|
|
+/* MARK: - Спливаючі повідомлення та швидкий зворотний зв'язок */
|
|
|
+"Meeting added successfully." = "Зустріч успішно додано.";
|
|
|
+"An issue occurred. Please try again." = "Виникла проблема. Спробуйте знову.";
|
|
|
+"Failed to load transcript." = "Не вдалося завантажити транскрипцію.";
|
|
|
+"Failed to generate notes." = "Не вдалося створити нотатки.";
|
|
|
+
|
|
|
+/* MARK: - Попередження браузера */
|
|
|
+"Try Again" = "Спробувати знову";
|
|
|
+"The in-app browser closed this page unexpectedly. You can try loading it again in this same window." = "Браузер у додатку несподівано закрив цю сторінку. Ви можете спробувати завантажити її знову в цьому ж вікні.";
|
|
|
+
|
|
|
+/* MARK: - Помилки планування та календаря */
|
|
|
+"Couldn't load schedule." = "Не вдалося завантажити розклад.";
|
|
|
+"Couldn't refresh schedule." = "Не вдалося оновити розклад.";
|
|
|
+"Couldn't connect Google account." = "Не вдалося підключити обліковий запис Гугл.";
|
|
|
+"Couldn't logout Google account." = "Не вдалося вийти з облікового запису Гугл.";
|
|
|
+"Couldn't load schedule" = "Не вдалося завантажити розклад";
|
|
|
+"Couldn't determine Meet meeting code from URL." = "Не вдалося визначити код зустрічі «Міт» з URL.";
|
|
|
+"Refreshing…" = "Оновлення…";
|
|
|
+"Connect Google to see meetings" = "Підключіть Гугл, щоб бачити зустрічі";
|
|
|
+"Connect to load schedule" = "Підключіться, щоб завантажити розклад";
|
|
|
+"Loading…" = "Завантаження…";
|
|
|
+"Loading schedule…" = "Завантаження розкладу…";
|
|
|
+"Start date must be on or before end date." = "Дата початку має бути до або дорівнювати даті завершення.";
|
|
|
+"Invalid custom date range" = "Недійсний власний діапазон дат";
|
|
|
+"No meetings" = "Немає зустрічей";
|
|
|
+"No meetings for selected filters" = "Немає зустрічей для вибраних фільтрів";
|
|
|
+"No meetings on %@" = "Немає зустрічей на %@";
|
|
|
+"1 meeting on %@" = "1 зустріч на %@";
|
|
|
+"%d meetings on %@" = "%d зустрічей на %@";
|
|
|
+"All day" = "Весь день";
|
|
|
+"Duration: all day" = "Тривалість: весь день";
|
|
|
+"Duration: %dh %dm" = "Тривалість: %dгод %dхв";
|
|
|
+"Duration: %dh" = "Тривалість: %dгод";
|
|
|
+"Duration: %dm" = "Тривалість: %dхв";
|
|
|
+"%@ - %@" = "%@ - %@";
|
|
|
+"Scheduled Meeting" = "Запланована зустріч";
|
|
|
+
|
|
|
+/* MARK: - Спливаюче вікно створення зустрічі */
|
|
|
+"Please enter a title." = "Будь ласка, введіть назву.";
|
|
|
+"Duration must be a positive number of minutes." = "Тривалість має бути додатним числом хвилин.";
|
|
|
+"Invalid start time." = "Недійсний час початку.";
|
|
|
+
|
|
|
+/* MARK: - Нагадування та сповіщення */
|
|
|
+"Reminders" = "Нагадування";
|
|
|
+"1 Day Before" = "За 1 день";
|
|
|
+"12 Hours Before" = "За 12 годин";
|
|
|
+"1 Hour Before" = "За 1 годину";
|
|
|
+"Starts in 1 day" = "Починається через 1 день";
|
|
|
+"Starts in 12 hours" = "Починається через 12 годин";
|
|
|
+"Starts in 1 hour" = "Починається через 1 годину";
|
|
|
+
|
|
|
+/* MARK: - Помилки Google OAuth */
|
|
|
+"Missing Google OAuth Client ID." = "Відсутній ідентифікатор клієнта OAuth Гугл.";
|
|
|
+"Missing Google OAuth Client Secret." = "Відсутній секрет клієнта OAuth Гугл.";
|
|
|
+"Invalid OAuth callback URL." = "Недійсний URL зворотного виклику OAuth.";
|
|
|
+"Google did not return an authorization code." = "Гугл не повернув код авторизації.";
|
|
|
+"Token exchange failed: %@" = "Помилка обміну токеном: %@";
|
|
|
+"Could not open browser for Google sign-in." = "Не вдалося відкрити браузер для входу через Гугл.";
|
|
|
+"Google sign-in timed out." = "Час очікування входу через Гугл вичерпано.";
|
|
|
+"No stored Google tokens found." = "Не знайдено збережених токенів Гугл.";
|
|
|
+
|
|
|
+/* MARK: - Помилки AI-помічника/транскрипції */
|
|
|
+"Recording not found." = "Запис не знайдено.";
|
|
|
+"Local meeting audio is missing." = "Локальне аудіо зустрічі відсутнє.";
|
|
|
+"Generated transcript was empty." = "Згенерована транскрипція порожня.";
|
|
|
+"(No transcript entries found.)" = "(Записів транскрипції не знайдено.)";
|
|
|
+"No conference record found for this meeting." = "Не знайдено запису конференції для цієї зустрічі.";
|
|
|
+"No transcript found for this meeting." = "Не знайдено транскрипції для цієї зустрічі.";
|
|
|
+"Unable to create audio composition tracks." = "Не вдалося створити доріжки аудіокомпозиції.";
|
|
|
+"Unable to create audio export session." = "Не вдалося створити сеанс експорту аудіо.";
|
|
|
+"Audio mix export failed." = "Помилка експорту аудіоміксу.";
|
|
|
+"No display available for system audio capture." = "Немає доступного дисплея для захоплення системного звуку.";
|
|
|
+"Cannot add audio writer input." = "Не вдалося додати вхід запису аудіо.";
|
|
|
+
|
|
|
+/* MARK: - Помилки Google API */
|
|
|
+"Google Meet returned an invalid response." = "«Міт» від Гугл повернув недійсну відповідь.";
|
|
|
+"Google Meet API error (%d): %@" = "Помилка API «Міт» від Гугл (%d): %@";
|
|
|
+"Failed to parse Google Meet response: %@" = "Не вдалося проаналізувати відповідь «Міт» від Гугл: %@";
|
|
|
+"Google Calendar returned an invalid response." = "Календар Гугл повернув недійсну відповідь.";
|
|
|
+"Google Calendar API error (%d): %@" = "Помилка API Календаря Гугл (%d): %@";
|
|
|
+"Failed to parse Google Calendar events: %@" = "Не вдалося проаналізувати події Календаря Гугл: %@";
|
|
|
+
|
|
|
+/* MARK: - Помилки OpenAI */
|
|
|
+"OpenAI API key is missing. Set OPENAI_API_KEY in the environment or app key vault." = "Відсутній ключ API OpenAI. Встановіть OPENAI_API_KEY у середовищі або сховищі ключів додатку.";
|
|
|
+"Notes generation returned an invalid response." = "Генерація нотаток повернула недійсну відповідь.";
|
|
|
+"Notes generation failed (%d): %@" = "Помилка генерації нотаток (%d): %@";
|
|
|
+"Notes generation returned empty text." = "Генерація нотаток повернула порожній текст.";
|
|
|
+"OpenAI transcription returned an invalid response." = "Транскрипція OpenAI повернула недійсну відповідь.";
|
|
|
+"OpenAI transcription failed (%d): %@" = "Помилка транскрипції OpenAI (%d): %@";
|
|
|
+"OpenAI transcription returned no text." = "Транскрипція OpenAI не повернула текст.";
|
|
|
+
|
|
|
+/* MARK: - Навігація та браузер у додатку */
|
|
|
+"Open sites in the in-app browser (back, forward, reload, address bar). OAuth and “Continue in browser” flows stay inside the app." = "Відкривайте сайти в браузері додатку (назад, вперед, перезавантажити, адресний рядок). Потоки OAuth і «Продовжити в браузері» залишаються в додатку.";
|
|
|
+"Open in app browser" = "Відкрити в браузері додатку";
|
|
|
+"Meet help" = "Довідка «Міт»";
|
|
|
+"Go" = "Перейти";
|
|
|
+"Back" = "Назад";
|
|
|
+"Forward" = "Вперед";
|
|
|
+"Reload" = "Перезавантажити";
|
|
|
+
|
|
|
+/* MARK: - Мітки календаря та планування */
|
|
|
+"Google Calendar" = "Календар Гугл";
|
|
|
+"Untitled meeting" = "Зустріч без назви";
|
|
|
+"Created event missing start/end." = "Створена подія не має початку/кінця.";
|
|
|
+"Created event missing Meet/HTML link." = "Створена подія не має посилання Міт/HTML.";
|
|
|
+
|
|
|
+/* MARK: - Обліковий запис Google */
|
|
|
+"Google account" = "Обліковий запис Гугл";
|
|
|
+"%@, Google account" = "%@, обліковий запис Гугл";
|
|
|
+"Google User" = "Користувач Гугл";
|
|
|
+
|
|
|
+/* MARK: - Приєднання до Zoom (не використовується) */
|
|
|
+"Meeting ID" = "ID зустрічі";
|
|
|
+"Enter meeting ID..." = "Введіть ID зустрічі...";
|
|
|
+"Meeting Passcode" = "Код доступу до зустрічі";
|
|
|
+"Enter meeting passcode..." = "Введіть код доступу до зустрічі...";
|
|
|
+
|
|
|
+/* MARK: - Платіжний екран (альтернативні переваги) */
|
|
|
+"Virtual backgrounds" = "Віртуальні фони";
|
|
|
+"Tools for productivity" = "Інструменти для продуктивності";
|
|
|
+"24/7 support" = "Цілодобова підтримка";
|
|
|
+
|
|
|
+/* MARK: - Мовці в транскрипції */
|
|
|
+"You" = "Ви";
|
|
|
+
|
|
|
+/* MARK: - Помилки Keychain */
|
|
|
+"Failed to read OAuth tokens from Keychain." = "Не вдалося прочитати токени OAuth з Keychain.";
|
|
|
+"Keychain returned an invalid token payload." = "Keychain повернув недійсні дані токена.";
|
|
|
+"Failed to update OAuth tokens in Keychain." = "Не вдалося оновити токени OAuth у Keychain.";
|
|
|
+"Failed to save OAuth tokens to Keychain." = "Не вдалося зберегти токени OAuth у Keychain.";
|
|
|
+"Failed to delete OAuth tokens from Keychain." = "Не вдалося видалити токени OAuth з Keychain.";
|
|
|
+"Unable to allocate audio buffer." = "Не вдалося виділити аудіобуфер.";
|
|
|
+"Invalid revoke response." = "Недійсна відповідь на відкликання.";
|
|
|
+"Token revoke failed with status %d." = "Помилка відкликання токена зі статусом %d.";
|
|
|
+
|
|
|
+/* MARK: - Діагностика помилок */
|
|
|
+"Keychain: %d (%@)" = "Keychain: %d (%@)";
|
|
|
+"OSStatus: %d" = "OSStatus: %d";
|
|
|
+"Item: service=%@, account=%@" = "Елемент: service=%@, account=%@";
|